Hallo und ich werde gleich mal schamhaft rot, aber:
Ich kann tatsächlich keinen Dateipfad im Label ausgeben, wenn die Datei im selben Ordner wie das Programm liegt.
Delphi-Quellcode:
Label1.caption:='.....' + ExtractRelativePath('Uebersicht.txt','');
{oder:}
Label1.caption:='.....' + ExtractFilePath('Uebersicht.txt');
Beide liefern nur das '.....' und einen Leerstring, aber keinen Pfad.
Welche Procedur oder Function gibt mir in diesem Fall den Pfad an?
Wenn dein Delphiprogramm die Datei Uebersicht.txt findet, dann ist das Zufall, weil dein Programmverzeichnis, in dem sich die Datei befindet, gerade ausgewählt ist. Dein Programm kennt aber nicht den vollständigen Dateinamen der Datei Uebersicht.txt, solange du dem Programm diesen nicht mitteilst. Dein Programm weiß also nicht von alleine, welche Dateien in welchen Ordnern stehen, das mußt du erst via Code ermitteln. Deshalb kannst du auch kein ExtractFilePath auf einen Dateinamen ohne Pfadangaben machen, denn diese Funktion soll ja den Pfad aus dem vollständigen Dateinamen extrahieren, und wenn da kein Pfad drin ist, dann heißt das Ergebnis Leerstring. Die Funktion ExtractFilePath hat nichts mit dem Windows-Dateisystem zu tun, sondern separiert einfach aus einem String eine bestimmte Struktur, völlig unabhängig davon, ob da irgendwo entsprechende Pfade oder Dateien existieren.
Na, Denkfehler erkannt?