Verzeichnis löschen
-
hi leutz
nach langer zeit brauch ich wieder mal eure hilfe
ich will ein verzeichnis löschen mit der function SHFileOpreration
dazu muss ich die members von SHFILEOPSTRUCT füllen soweit so gut
so funktionierts einwandfrei
SHFILEOPSTRUCT sh;
sh.hwnd = NULL;
sh.fFlags = FOF_ALLOWUNDO | FOF_NOCONFIRMATION | FOF_NOERRORUI;
sh.wFunc = FO_DELETE;
sh.pFrom = "test3";
sh.pTo = NULL;
sh.hNameMappings = NULL;
sh.lpszProgressTitle = NULL;
SHFileOperation (&sh);aber wenn ich eine variable einsetz zb:
deldir = "test3";
char test[260] ;
LPCTSTR temp = test;
strcpy(test,deldir.c_str());SHFILEOPSTRUCT sh;
sh.hwnd = NULL;
sh.fFlags = FOF_ALLOWUNDO | FOF_NOCONFIRMATION | FOF_NOERRORUI;
sh.wFunc = FO_DELETE;
sh.pFrom = test;
sh.pTo = NULL;
sh.hNameMappings = NULL;
sh.lpszProgressTitle = NULL;
SHFileOperation (&sh);wird das verzeichnis nicht geloescht:( irgendwie denke ich hat mit den NULL zeichen zutun aber genau weis ichs nicht
ich hoffe mir kann jemand helfen
thx im voraus
tracer
-
Der String muß am Ende doppelt genullt sein. Also irgendwie so:
test[(strlen(strcpy(test,deldir.c_str())) + 1)] = '\0';
[ Dieser Beitrag wurde am 08.11.2002 um 12:57 Uhr von -King- editiert. ]
-
hi king
danke danke danke
ich hab zwar schon so eine ähnliche version probiert aber deine hat gefuntzt
super:D
cu tracer