Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   application.exename (https://www.delphipraxis.net/193396-application-exename.html)

derseitzer 25. Jul 2017 19:32

application.exename
 
Hallo Leute,

ich wollte gerade eigentlich wie gewohnt meinen Speicherort finden und dort den 'picture' Ordner per Programm finden, allerdings funktioniert folgender Befehl nicht mehr:
dir:= ExtractFilePath(application.Exename); //undeklarierter bezeichner 'Exename'

Er funktioniert wahrscheinlich nicht mehr, da ich ein Firemonkey Projekt erstellt habe, das auf Android laufen soll. Deshalb habe ich "Vcl.Forms" nicht unter "uses" stehen..
Gibt es einen komplementären Befehl für FMX oder sollte ich nur etwas unter uses hinzufügen?:/

Vielen dank im voraus!

Uwe Raabe 25. Jul 2017 19:38

AW: application.exename
 
Um plattformunabhängig zu sein, solltest du besser die in System.IOUtils bereitgestellten Pfade verwenden (
Delphi-Quellcode:
TPath.GetHomePath
,
Delphi-Quellcode:
TPath.GetDocumentsPath
usw.). Da du in den meisten Fällen eh nicht in den Pfad schreiben darfst, in dem deine Anwendung liegt, bist du mit diesen Wrappern eigentlich besser bedient.

derseitzer 25. Jul 2017 19:49

AW: application.exename
 
klappt super ich danke dir:)

Fritzew 25. Jul 2017 19:51

AW: application.exename
 
Zitat:

bist du mit diesen Wrappern eigentlich besser bedient.
Gebe ich Dir recht, aber ein Wrapper für
Delphi-Quellcode:
ExtractFilePath(ParamStr(0))
würde auch nicht schaden.....

Glados 25. Jul 2017 20:22

AW: application.exename
 
Zitat:

Um plattformunabhängig zu sein, solltest du besser die in System.IOUtils bereitgestellten Pfade verwenden (TPath.GetHomePath , TPath.GetDocumentsPath usw.). Da du in den meisten Fällen eh nicht in den Pfad schreiben darfst, in dem deine Anwendung liegt, bist du mit diesen Wrappern eigentlich besser bedient.
Gibt es in TPath auch eine Funktion die das Verzeichnis der eigenen Exe zurückgibt?

Uwe Raabe 25. Jul 2017 20:42

AW: application.exename
 
Zitat:

Zitat von Fritzew (Beitrag 1377475)
Gebe ich Dir recht, aber ein Wrapper für
Delphi-Quellcode:
ExtractFilePath(ParamStr(0))
würde auch nicht schaden.....

Zitat:

Zitat von Glados (Beitrag 1377476)
Gibt es in TPath auch eine Funktion die das Verzeichnis der eigenen Exe zurückgibt?

Unter Windows ist das
Delphi-Quellcode:
TPath.GetLibraryPath
.

Eine Übersicht der Bedeutungen für die verschiedenen Plattformen gibt es hier: Standard-RTL-Pfadfunktionen für alle unterstützten Zielplattformen

Fritzew 25. Jul 2017 20:53

AW: application.exename
 
Aah Danke, ist mir entgangen. Bei GetLibraryPath habe ich an sowas wie wie System32 und co gedacht. Man sollte mehr lesen und weniger denken. :shock:

Glados 26. Jul 2017 00:00

AW: application.exename
 
Ich wollte eigentlich meine alte Funktion welche ShGetSpecialFolderLocation aufruft rausschmeißen und durch die TPath-Varianten ersetzen.
Aber CSIDL_DESKTOPDIRECTORY und CSIDL_STARTMENU scheint es wohl nicht zu geben.

jaenicke 26. Jul 2017 06:27

AW: application.exename
 
Zitat:

Zitat von Glados (Beitrag 1377482)
Aber CSIDL_DESKTOPDIRECTORY und CSIDL_STARTMENU scheint es wohl nicht zu geben.

Die sind ja auch Windows-spezifisch und somit gibt es keine Notwendigkeit für einen plattformunabhängigen Wrapper via TPath.

Glados 26. Jul 2017 10:34

AW: application.exename
 
Schön wäre es dennoch und kürzeren Code hätte man dann auch.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:11 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz