![]() |
Probleme mit ForceDirectories
Hey,
ich habe diesen Code
Delphi-Quellcode:
und mein Pfad besteht nur zur hälfte ....
if not (DirectoryExists(Pfad)) then
begin ForceDirectories(Pfad); Dokument.Add(Text); Dokument.SaveToFile(DokumentenOrt); end Else begin If not FileExists(DokumentenOrt) Then begin Dokument.Add(Text); Dokument.SaveToFile(DokumentenOrt); end; also Pfad := C:\Users\Christopher\AppData\Roaming\Kalender\2008 \ und das hier ist schon vorhanden C:\Users\Christopher\AppData\Roaming\Kalender wieso erstellt mir der Befehl ForceDirectories(Pfad); denn nun nicht meinen Ordner '2008' ??? ich fliege nämlich dann später raus mit der fehlermeldung 'der Pfad ist nicht vorhanden' und das Programm erkennt 'pfad' aber auch nicht als nicht vorhanden .. wieso denkt das programm der pfad sei vorhanden ? nur weil der erste teil schon da ist ?1 |
Re: Probleme mit ForceDirectories
Vielleicht hast du dort keine Schreibrechte? Teste das mal mit dem Dokumenteordner.
|
Re: Probleme mit ForceDirectories
Zitat:
Die Variable Pfad enthält nicht das Jahr. Desweiteren wäre es chön, wenn du vor dem Posten schon mal selber gucken würde, wo der fehler sein könnte, in dem du deinen Code mal debuggst. |
Re: Probleme mit ForceDirectories
und laß mal das \ aus dem Pfad
ok, daß ExcludeTrailingPathDelimiter sollte dieses Problem beheben |
Re: Probleme mit ForceDirectories
denkst du allen ernstes ich hatte das nicht gemacht ?!
Die Variable Pfad enthält nicht das Jahr. doch enthält sie !! woher willst du wissen das sie das nicht tut ? also ich denk manchmal ihr haltet mich für blöd :x also das war auf luckie bezogen |
Re: Probleme mit ForceDirectories
PS: ForceDirectories liefert dir einen netten Rückgabewert, ala Boolean
z.B.:
Delphi-Quellcode:
[add]
If ForceDirectories(Path) Then Begin
Dokument.Add(Text); Dokument.SaveToFile(DokumentenOrt); End Else ShowMessage(SysErrorMessage(GetLastError)); und wozu zwei getrennte Pfade? das sind nur unnötige Fehlerquellen
Delphi-Quellcode:
ForceDirectories(ExctractFilePath(DokumentenOrt));
|
Re: Probleme mit ForceDirectories
Ich würde den Code etwas erweitern:
Delphi-Quellcode:
if not (DirectoryExists(Pfad)) then
begin if SysUtils.ForceDirectories(Pfad) then begin Dokument.Add(Text); Dokument.SaveToFile(DokumentenOrt); end else MessageBox(0,PChar(Format('Fehler beim Anlegen des Verzeichnisses "%s"',[Pfad])),'Oops',MB_OK or MB_ICONERROR); end else ... |
Re: Probleme mit ForceDirectories
Zitat:
bringt nichts ich bekomme KEINE MsgBox und bekomme hier
Delphi-Quellcode:
die fehlermeldung "Pfad ist nicht vorhanden"
begin
if SysUtils.ForceDirectories(Pfad) then begin Dokument.Add(Text); Dokument.SaveToFile(DokumentenOrt); end else MessageBox(0,PChar(Format('Fehler beim Anlegen des Verzeichnisses "%s"',[Pfad])),'Oops',MB_OK or MB_ICONERROR); end else begin If not FileExists(DokumentenOrt) Then begin Dokument.Add(Text); Dokument.SaveToFile(DokumentenOrt); // hier !! end; also erkennt er IMMERNOCH NICTH, dass er deb Pfad anlegen soll ... |
Re: Probleme mit ForceDirectories
Zitat:
Zitat:
Zitat:
|
Re: Probleme mit ForceDirectories
wenn ForceDirectories True liefert (also keine MessageBox anzeigt), dann ist es der Meinung es gibt den Pfad, welchen du ihm gibst ... demnach wäre der von dir übergebene Pfad fehlerhaft.
und was sagt meine Version? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz