AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Application Path

Ein Thema von xthing · begonnen am 4. Jul 2006 · letzter Beitrag vom 27. Jun 2022
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
xthing

Registriert seit: 3. Jun 2006
69 Beiträge
 
#1

Application Path

  Alt 4. Jul 2006, 14:03
Hi Leute,

wie kann ich den Applikationspfad meiner Anwendung in Delphi herausfinden? Irgendwie mit extractpath, oder so ähnlich?

Könnt ihr mir helfen?

Vielen Dank im voraus.

Gruss
xthing
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Application Path

  Alt 4. Jul 2006, 14:05
das ist:

Zitat:
Returns the drive and directory portions of a file name.

Unit

SysUtils

Category

file name utilities

function ExtractFilePath(const FileName: string): string;

Description

The resulting string is the leftmost characters of FileName, up to and including the colon or backslash that separates the path information from the name and extension. The resulting string is empty if FileName contains no drive and directory parts.

Note: This function works for multi-byte character systems (MBCS).
ist aber auch in der Hilfe zu finden.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#3

Re: Application Path

  Alt 4. Jul 2006, 14:05
Hallo,

ExtractFilePath(Application.ExeName) oder

ExtractFilePath(ParamStr(0))
  Mit Zitat antworten Zitat
Gutelo

Registriert seit: 29. Sep 2013
152 Beiträge
 
#4

AW: Application Path

  Alt 5. Okt 2013, 07:31
Dazu haette ich noch eine Frage

Bei mir klappt das mit dem Pfad so lange ich in der Entwicklungsumgebung bin. Kopiere ich jedoch das kompilierte Programm Main.exe mitsamt einem Unterverzeichnis (im gleichen Ordner wie Main.exe) in irgendein anderes Verzeichnis und fuehre es aus, dann findet das Programm den Unterordner nicht mehr. Das heisst ExtractFilePath(Application.ExeName) entspricht dann nicht mehr dem Pfad zur Main.exe.

Wieso ist das so? Ich dachte ExtractFilePath(Application.ExeName) gibt immer den Pfad zur Main.exe zurueck auch wenn ich Main.exe an beliebige Orte auf der Platte kopiere.

Gutelo
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.580 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Application Path

  Alt 5. Okt 2013, 08:26
Das ist auch so. Wo liegt denn dein Programm und was wird dort zurück gegeben?

Ein Beispiel:
c:\programme ist ab Vista nur eine Umleitung auf c:\program files, so dass du letzteres zurück bekommst.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#6

AW: Application Path

  Alt 5. Okt 2013, 08:26
Kommt drauf an: Wenn du dein Release-Verzeichnis z.B. in C:\Program Files\ kopierst, hast du dort in der Regel keine Schreibrechte. Deshalb "biegen" neuere Windows-Versionen den Programmpfad um und schreiben in Wirklichkeit in einen öffentlichen Pfad. Das ist natürlich falsch! Jaenicke hat es oben korrekt dargestellt ...

Eine portable Anwendung sollte allerdings, da sie ja nicht in einem der System-Ordner liegt, durchaus in ihr Programmverzeichnis schreiben dürfen.

Dazu hat Jaenicke bereits vor 5 Jahren etwas in der Entwicklerecke geschrieben:

Eine Anwendung - gleichzeitig portabel UND installierbar
Nicht in den Ordner der Exe schreiben

Geändert von Perlsau ( 5. Okt 2013 um 08:32 Uhr)
  Mit Zitat antworten Zitat
Gutelo

Registriert seit: 29. Sep 2013
152 Beiträge
 
#7

AW: Application Path

  Alt 7. Okt 2013, 08:57
Hallo ich habs gerade nochmal ausprobiert.

Wenn ich es unter C:\users\userxyz\Downloads\Unterordner\ packe dann geht es nicht. Wenn ich es irgendwo auf D:\ packe dann geht es. Anscheinend gibt es in den User Ordnern Probleme.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#8

AW: Application Path

  Alt 7. Okt 2013, 08:59
Was heißt "geht nicht"? Was steht denn in Application.Exename bzw. ParamStr(0)?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#9

AW: Application Path

  Alt 7. Okt 2013, 09:59
Liegt es nur an den Ordner "Downloads". Dieses ist im Explorer nicht direkt ein Ordner sondern eine Weiterleitung auf einen beliebigen Ordner.

Sag uns doch mal bitte die Fehlercodes oder die Exception.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.054 Beiträge
 
Delphi 12 Athens
 
#10

AW: Application Path

  Alt 7. Okt 2013, 10:21
Da es hier danach klingt.

KEINE relativen Pfade verwenden, denn das Arbeitsverzeichnis muß nicht dem Programmverzeichnis entsprechen (z.B. wenn das Programm über einen Link oder in einem umgeleiteten Vertzeichnis im Explorer, über aufgerufen mit relativen Pfaden und über Suchpfade gefunden)
und das arbeitsverzeichnis kann sich auch während Laufzeit des Programms leicht mal verändern (daür reicht schon ein TOpenDialog aus).
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:17 Uhr.
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