Bonjour,
Je souhaite vider un répertoire :
J'ai testé via les deux solutions proposés par le forum et la faq et dans les deux cas, ca ne fonctionne pas ...
Premiere solution :
Le répertoire est bon car quand j essaye avec un type spécifique doc, txt, le travail est fait ( les fichiers de tel type ont été supprimé) donc le probleme est dans les extensions : je n ai pas trouvé comment faire en sorte d ajouter tous les fichiers :/Code:
1
2
3
4
5
6
7
8
9
10 TStringList *Extensions2 = new TStringList; // On construit la liste des extensions Extensions2->Add(".*"); Extensions2->Add("*.*"); Extensions2->Add("*.*/0"); // Appel à notre méthode, avec pour liste des fichiers, les items de la ListBox. Search(tmp1, Extensions2, LBtempdocenvoidxcarebis->Items); for ( k = 0 ; k < (LBtempdocenvoidxcarebis->Items->Count) ; k++) { if((DeleteFile(LBtempdocenvoidxcarebis->Items->Strings[k])) == true) ShowMessage("Message supprimé"); }
Deuxieme méthode :
Code:
1
2
3
4
5
6
7
8
9
10 SHFILEOPSTRUCT FileOpStr; ZeroMemory(&FileOpStr, sizeof(FileOpStr)); FileOpStr.hwnd = Application->Handle; FileOpStr.fFlags = FOF_NOCONFIRMATION ; FileOpStr.wFunc = FO_DELETE; AnsiString tmp9 = tmp1 + "*.*\0"; ShowMessage(tmp9); // il m'affiche ici C:\Test\*.* FileOpStr.pFrom = tmp9.c_str(); SHFileOperation(&FileOpStr);
Et j ai une erreur :
Impossible de supprimer Fichier : Impossible de lire à partir du fichier ou de la disquette source
Merci d'avance pour votre aide !