![]() |
Relative Pfade
Hallo,
mit der Funktion, werden alle Dateien von dem gewählten Ordner aufgelistet Ich möchte aber der Pfad als Relativ und nicht als absolut so: Test/archiv/test.php logo.gif Und nicht als Absolut so: C:/programme/delphi/Test/archiv/test.php C:/programme/delphi/Test/logo.gif Hier ist der Code :
Delphi-Quellcode:
procedure TForm1.AddFilesToList(Filter, Folder: string; Recurse: Boolean);
var sr: TSearchRec; sDirList: TStringList; i: Integer; begin if FindFirst (Folder + Filter, faAnyFile, sr) = 0 then repeat ListBox1.Items.Add (Folder + sr.Name); until FindNext(sr) <> 0; FindClose(sr); if Recurse then begin sDirList := TStringList.Create; try GetSubDirs (Folder, sDirList); for i := 0 to sDirList.Count - 1 do if (sDirList[i] <> '.') and (sDirList[i] <> '..') then begin Update; ListBox1.Refresh; AddFilesToList (Filter, IncludeTrailingPathDelimiter (Folder + sDirList[i]), Recurse); // hier soll geändert werden end; finally sDirList.Free; end; end; end; procedure TForm1.btnSourceClick(Sender: TObject); var Dir: string; begin Dir := CurrentDir; if SelectDirectory ('Choose Folder', '', Dir) then begin CurrentDir := Dir; AddDelphiFiles; end; end; |
Re: Relative Pfade
Du lässt einfach in diesem Teil
Delphi-Quellcode:
den 'Folder +' weg, also so:
ListBox1.Items.Add (Folder + sr.Name);
Delphi-Quellcode:
Der Rest bleibt, wie er ist.
ListBox1.Items.Add (sr.Name);
Edit: gut, entspricht nicht der Anforderung. |
Re: Relative Pfade
Tach auch,
mit ExtractFilePath(ParamStr(0)) bekommst Du den Pfad indem Dein Executable liegt. Wenn Du alles Pfade relativ zu diesem Pfad haben willst, mußt Du diese entsprechend bearbeiten. Wenn die Pfade alle auf ein Verzeichnis unterhalb Deines Exe Pfades zeigen ist das recht einfach. Wenn nicht mußt Du schauen wie der Pfad zu dem bekannten Pfad relativ verläuft. Grüße Klaus |
Re: Relative Pfade
Am Rapid Application Development?
taktaky o.ä. eventuell wäre es für dich ratsam, mal dienen Quelltext selber anzuschauen und zu verstehen, was wie gemacht wird. Dann erübrigen sich einige deiner Fragen und du selber wirst auch nach und nach Delphi lernen. |
Re: Relative Pfade
Zitat:
Es soll aber nur von C:/ bis Delphi/ gelöscht (also bis exe Ordner) <> |
Re: Relative Pfade
Zitat:
|
Re: Relative Pfade
|
Re: Relative Pfade
Zitat:
Delphi-Quellcode:
Delete(RelativerPfad, 1, length(Folder));
|
Re: Relative Pfade
Hallo,
zum Erzeugen relativer Pfadangaben kann man auch die Funktion ![]()
Delphi-Quellcode:
Gruß Hawkeye
ExtractRelativePath('C:\programme\delphi\', 'C:\programme\delphi\Test\archiv\test.php')
|
Re: Relative Pfade
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:04 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 by Thomas Breitkreuz