1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
if ( ! TempPath.IsEmpty())
{
TFileName TempMask = TempPath + "*.*";
int Len = TempMask.Length();
int Size = Len + 1; // +1 pour le caractère zéro terminal de chaine
wchar_t* pFormArray = new wchar_t[Size + 1]; // +1 pour le caractère zéro terminal de tableau de chaine
try
{
StrCopy(pFormArray, TempMask.c_str());
pFormArray[Size] = 0; // Indique la fin du tableau de chaine
SHFILEOPSTRUCTW DeleteCriteria;
ZeroMemory(&DeleteCriteria, sizeof(DeleteCriteria));
DeleteCriteria.wFunc = FO_DELETE;
DeleteCriteria.pFrom = pFormArray;
DeleteCriteria.fFlags = FOF_FILESONLY | FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOERRORUI;
SHFileOperationW(&DeleteCriteria);
}
__finally
{
delete [] pFormArray;
}
} |
Partager