Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Wie bekommt man raus aus welchen Ordner gestartet wurde? (https://www.delphipraxis.net/168930-wie-bekommt-man-raus-aus-welchen-ordner-gestartet-wurde.html)

smart 19. Jun 2012 12:31

Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
Hallo,

wie bekommt man raus, aus welchen Verzeichnis meine Anwendung gestartet wurde?

hitzi 19. Jun 2012 12:36

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
ExtractFilePath(ParamStr(0)) sollte das doch machen, oder?

knochen 19. Jun 2012 12:36

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
Delphi-Quellcode:
ExtractFilePath(Application.Exename)

smart 19. Jun 2012 12:39

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
danke an Euch beiden,klappt beides.

s.h.a.r.k 19. Jun 2012 12:40

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
Zitat:

Zitat von knochen (Beitrag 1171579)
Delphi-Quellcode:
ExtractFilePath(Application.Exename)

Eine kleine Info am Rande: Application.ExeName greift internt auf ParamStr(0) zu ;)

implementation 19. Jun 2012 13:25

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
Hmm, man sollte eigentlich schon zwischen Arbeitsverzeichnis und Ort der Exe unterscheiden. Das ist nicht immer gleich (auf Windows zwar meistens, auf Unix aber sehr, sehr selten)
Je nachdem, was du damit anstellen willst, funktionieren die genannten Lösungen zwar wahrscheinlich zunächst, das ist dann aber vielleicht mehr oder weniger Zufall.

Brauchst du tatsächlich den Ort der Exe oder das Arbeitsverzeichnis?

himitsu 19. Jun 2012 13:36

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
"Aus welchem Verzeichnis die Anwendung gestartet wurde" bekommt man nicht raus, (auch wenn es eventuell dem anfänglichen Arbeitsverzeichnis entsprechen mag),

aber das Arbeitsverzeichnis
oder das Programmverzeichnis (da wo die eigene EXE liegt)
kann man schon auslesen.

Iwo Asnet 19. Jun 2012 14:17

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
Zitat:

Zitat von himitsu (Beitrag 1171589)
"Aus welchem Verzeichnis die Anwendung gestartet wurde" bekommt man nicht raus, (auch wenn es eventuell dem anfänglichen Arbeitsverzeichnis entsprechen mag),

Aus welchem Verzeichnis wurde die Anwendung gestartet, wenn ich
a) auf dem Desktop auf eine Verknüpfung doppelklicke?
b) über den Windows-Explorer eine EXE doppelklicke?
c) Ich aus einer Anwendung heraus mit ShellExecute eine andere EXE starte?
d) Mich per Remote von einem Apple aus einwähle, der in einer VM läuft?

Fragen, die die Welt bewegen.

Und: Befinde ich mich eigentlich immer in einem Verzeichnis?

Ich glaube, der Fragesteller ist mit #2 und #3 zufrieden.

p80286 19. Jun 2012 15:47

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
Ich denke mit
Delphi-Quellcode:
Getdir
sollte die Frage beantworted sein.
Dies würde dem Arbeitsverzeichnis entsprechen.

Delphi-Quellcode:
Paramstr(0)
würde bei solchen Konstrukten z.B. falsch liegen:
Code:
C:
CD \meinArbeitsVerzeichnis
c:\Programme\Eigenen\MeinProgramm.exe
Gruß
K-H

DeddyH 19. Jun 2012 15:49

AW: Wie bekommt man raus aus welchen Ordner gestartet wurde?
 
Es kommt darauf an, wie die Frage eigentlich gemeint war. Und statt GetDir würde ich persönlich GetCurrentDir verwenden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:09 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