Zitat von
Muetze1:
Zitat von
himitsu:
Zitat von
VizeTE:
Windows sucht dann zunächst im Ausführungsverzeichnis, dann im den Verzeichnissen
in der Windwos-Path-Variabeln und was weiß ich wo noch alles.
nein
Es kommt drauf an, wie du die Datei öffnest.
DLLs via LoadLibrary werden z.B. so gesucht.
Aber z.B. AssignFile oder Stream.LoadFromFile öffnet dagegen immer nur im aktuellen Programmverzeichnis.
Bei DLLs kann man es explizit umstellen bzw. festlegen ob dieser Vorgang gemacht werden soll. Die Angabe irgendeines Pfades vor dem
DLL Namen bei LoadLibrary() setzt die schon außer Kraft (also auch z.B. ein ".\").
Und Programmverzeichnis ist in diesem Falle falsch sondern einfach nur aktuelles Verzeichnis. Das Programmverzeichnis ist es schon nach dem nächsten Open- oder Savedialog nicht mehr, wenn der Nutzer das Verzeichnis und/oder Laufwerk wechselt.
Ok, das hätte ich dazuschreiben können: Es handelt sich nicht um eine
dll sondern um eine ini. Wenn ich dort bei TIniFile.Create(...) als Parameter "myini.ini" angebe wird die Datei geöffnet auch wenn sie z.B. im Windows-Verzeichnis liegt.
Zitat von
joachimd:
Zitat von
VizeTE:
unter Windows kann ich doch einfach eine Datei ohne Angabe des Pfades öffnen.
Windows sucht dann zunächst im Ausführungsverzeichnis, dann im den Verzeichnissen
in der Windwos-Path-Variabeln und was weiß ich wo noch alles
SearchPath
Ja, genau das habe ich gesucht:
Vollständiger Dateiname gemäss PATH
Danke!