Wie kann man in Delphi die Position der Datei feststellen (welches Verzeichnis, Laufwerk)? So dass ich dann z.B. eine INI-Datei im gleichen Verzeichnis erstellen kann obwohl ein anderes Verzeichnis aktiv ist.
Danke
Mario
Wie kann man in Delphi die Position der Datei feststellen (welches Verzeichnis, Laufwerk)? So dass ich dann z.B. eine INI-Datei im gleichen Verzeichnis erstellen kann obwohl ein anderes Verzeichnis aktiv ist.
Danke
Mario
Wie kann man in Delphi die Position der
Datei feststellen (welches Verzeichnis,
Laufwerk)? So dass ich dann z.B. eine
INI-Datei im gleichen Verzeichnis
erstellen kann obwohl ein anderes
Verzeichnis aktiv ist.
ExtractFilePath(Application.ExeName)
Frohe Ostern
Martin
oder GetDir wie zu TP’s-Zeiten
oder GetDir wie zu TP’s-Zeiten
Hallo Delphi-Profi (die Quantität und Qualität Deiner Postings in diesem Brett legen das nahe ),
das wirft die Frage auf, ob „GetDir(0)“ (wenn 0 übergeben wird, bedeutet das ja „ich will das aktuelle Verzeichnis auf dem aktuellen Laufwerk wissen“) und „ExtractFilePath(Application.ExeName)“ in jedem Fall diesselben Ergebnisse zurückliefern. Die Antwort lautet nein. „GetDir(0)“ liefert tatsächlich ein falsches Ergebnis zurück, wenn das Programm von einem MSDOS-Fenster aus gestartet wird (und in einem anderen Verzeichnis liegt als das, was der Prompt anzeigt). Mit „ExtractFilePath(Application.ExeName)“ erhält man dagegen wirklich immer das Verzeichnis, in dem die exe-Datei liegt.
Das heißt: Wenn ein Proggi namens „Test.exe“ im Verzeichnis „C:\Programme\Test“ liegt und aus einem MSDOS-Fenster, dessen Prompt „C:\Windows“ anzeigt, mit „C:\Programme\Test\Test“ gestartet wird, dann liefert „GetDir(0)“ fälschlicherweise „C:\Windows“ zurück, „ExtractFilePath(Application.ExeName)“ dagegen das gewünschte „C:\Programme\Test“.
Mit freundlichem Gruß
Martin
*dersichjetzterstmalseineFingerneuordnet:wink:*
wieso soll das fäschlich sein ?
Das eine liefert eben den Pfad der Exe und das andere das aktuelle Verzeichnis zur Laufzeit. Hab das nur so ergänzend hinzugefügt, aber ich hätte es ein bisschen genauer formulieren sollen