Hallo!
Ich möchte in meinem MFC-Programm einen ganzen Ordner rekursiv löschen. Verwende dazu SHFileOperation.
Den Member pFrom der Struktur SHFILEOPSTRUCT setze ich, nach diversen Versuchen, inzwischen mit einer Variable vom Typ LPCTSTR (so, wie der Member in der Struktur auch definiert ist).
Das könnte beispielsweise so aussehen:
LPCTSTR sTargetFolder = "C:\\tmp\0\0"
In diesem Fall funktioniert das auch.Wenn ich mir allerdings meinen zu löschenden Pfad beispielsweise so zusammenbaue:
TCHAR szPathName[_MAX_PATH];
::GetModuleFileName(NULL, szPathName, _MAX_PATH);
LPTSTR pszFileName = _tcsrchr(szPathName, '\\') + 1;
*pszFileName = '\0';
CString sAppRoot = szPathName;
LPCTSTR sTargetFolder = sAppRoot + "images\\test\0\0";
dann erzählt er mir Windows immer was vonwegen"Datei kann nicht gelöscht werden: Die Quelldatei oder vom Quelldatenträger kann nicht gelesen werden."
Habe schon einige Varianten durchprobiert - wie gesagt auch mit der Verwendung eines anderen Typs für den Member pFrom. In einem Beispielskript im Netz wurde string verwendet, aber das Ergebnis war bei mir das gleiche.
Hat jemand von euch Experten einen Lösungsvorschlag?
Vielen Dank schonmal!
greez
JoSsiF