Thema: Delphi EFcreateError Hilfe!

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.016 Beiträge
 
Delphi 12 Athens
 
#2

AW: EFcreateError Hilfe!

  Alt 10. Mai 2012, 22:08
Zitat:
pathlang1:='Vokabellisten\'+lang1+'\'+ok
Arbeite niemals mit relativen Pfaden!

Nein, relative Pfade sind nicht relativ zum Verzeichnis wo die EXE liegt,
sondern sie liegen relativ zum aktiellen Arbeitsverzeichnis. (und das kann sich ändern, z.B. der FileDialog spielt gerne damit rum )

Tja, wenn du versuchst eine Datei in einem Verzeichnis zu speichern, welches nicht existiert, dann muß es zwangsläufig knallen.

Tipp: ExtractFilePath(ParamStr(0)) oder ExtractFilePath(Application.ExeName) z.B. siehe http://www.delphipraxis.net/168206-d...-new-post.html

So, wenn deine Pfade irgendwann mal stimmen (absolut sind), dann darfst du dir auch DirectorYExists, CreateDirectory oder ForceDirectories angucken, oder du erstellst die Verzeichnisstruktur außerhalb deines Programms. (z.B. manuell über den Explorer)



PS: SaveDialog1.Execute ist eine Funktion.
Drück mal auf Abbrechen und wundere dich dann, daß dennoch gespeichert wird, obwohl du es doch nicht mehr wolltest.

Zitat:
Delphi-Quellcode:
 back:='';
 i:=length(savedialog1.filename);
 while not (savedialog1.filename[i]='\') do
  begin
   part:=savedialog1.filename[i];
   back:=back+part;
   i:=i-1;
  end;
Das soll nicht zufällig ein Delphi-Referenz durchsuchenExtractFileName darstellen?

Delphi-Referenz durchsuchenReverseString
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (10. Mai 2012 um 22:17 Uhr)
  Mit Zitat antworten Zitat