siccome lo devo usare unicamente io e quindi nn ho problemi di portabilita pensavo di usare il comando:
Fai le cose per bene invece:
codice:
#include <windows.h>
#include <shlwapi.h>
#include <shlobj.h>
/* Nota: linkare con shlwapi.lib e shell32.lib */
/* ... */
const char * ListaNomi[]={"AppData", "Program" /* eccetera */};
char percorso[MAX_PATH];
if(!SHGetSpecialFolderPath(NULL,percorso,CSIDL_DESKTOPDIRECTORY,TRUE))
{
fputs("Errore: impossibile ottenere la directory del destkop.", stderr);
/* esci in qualche modo */
}
if(!PathAppend(percorso,ListaNomi[indice]))
{
fputs("Errore: impossibile costruire il percorso della directory di destinazione", stderr);
/* esci in qualche modo */
}
if(!CreateDirectory(percorso, NULL))
{
DWORD errore=GetLastError();
if(errore!=ERROR_ALREADY_EXISTS)
fprintf(stderr, "Impossibile creare la cartella, errore 0x%8x.",errore);
}