Directory auf Existenz prüfen und erzeugen ?
-
Hallo,
ich möchte ein directory erzeugen. Dazu nutze ich folgenden Code:CString path = CString("C:\\Programme\\muh"); //... void setDirectory(const CString& path) { DWORD dwRetVal = 0; if(!PathFileExists(path) { if(!CreateDirectory(path, NULL) throw "Verzeichnis konnte nicht erstellt werden!"; } else throw "Verzeichnis konnnte nicht erstellt werden!"; }Beim ersten Versuch funktioniert das ganze. Existiert das Verzeichnis allerdings schon bekomme ich eine unhandled exception. Habe leider k.A. wo der Fehler liegt. Bitte helf mir weiter.
Gruß
-
Versuch es doch lieber mal mit PathIsDirectory(), denk oich das passt besser zu deinem gesuchten
-
Hallo,
Danke für die schnelle Hilfe. Wenn das Verzeichnis schon existiert bekomme ich leider immer noch die first-chance exception in meiner Anwendung (kernel32.dll). Scheint aber nicht am CreateDirectory() zu liegen, da ich die exception auch bekomme wenn ich CreateDirectory() auskommentiere ?!?!Folgendes wird angezeigt:
Loaded 'C:\windows\...\odbc32.dll', no matching symbolic information foundfür odbc32.dll, winsta.dll, shgina.dll davclnt.dll,......,ntdll.dll das selbe
Habe den Code mal geändert in:
if(!PathIsDirectory(path)) CreateDirectory(path, NULL); else throw "Fehler";Hast du eine Idee woran das liegen kann??
-
First chance exception sind exceptions, welche geworfen, aber gefangen wurden.
Es ist also nur eine Debugger Information, betrifft dich aber nicht.Simon
Edit
BTW: Checke den Return Wert von CreateDirectory(..).
-
if(!PathFileExists(path) { if(!CreateDirectory(path, NULL) throw "Verzeichnis konnte nicht erstellt werden!"; } else throw "Verzeichnis konnnte nicht erstellt werden!";Wenn's existiert: throw... Was soll das?
-
Pather schrieb:
if(!PathFileExists(path) { if(!CreateDirectory(path, NULL) throw "Verzeichnis konnte nicht erstellt werden!"; } else throw "Verzeichnis konnnte nicht erstellt werden!";Wenn's existiert: throw... Was soll das?
Das verstehst Du eh nicht, ist nicht ganz Deine Sprache MFC.
-
Stupido!