Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Programmpath (https://www.delphipraxis.net/10199-programmpath.html)

Pseudemys Nelsoni 13. Okt 2003 16:07


Programmpath
 
hoi, womit bekomme ich den programpath raus? ich möchte von meinem programm aus seiten aufrufen....wenn aber ein ami es bentutz is der ordner ja nicht "programme" sondern "program files" (z.b).

Achja und wie kriege ich raus auf welcher partition windows installiert ist?

Dagon 13. Okt 2003 16:20

Re: Programmpath
 
Meinst du mit Programmpfad z.B. C:\Programme?
Dann hilft dir das vieleicht weiter.

Pseudemys Nelsoni 13. Okt 2003 16:22

Re: Programmpath
 
hallo, nein, so ein langer code kann nicht nur dazu da sein die default ordner zu finden. (aber danke ;))

ich meinte eigentlich..es muss doch sowas wie $WINDIR$ und das gleiche auch für den programm ordner geben, oder?

Christian Seehase 13. Okt 2003 16:25

Re: Programmpath
 
Moin Silent,

such mal hier nach Hier im Forum suchenSHGetSpecialFolderPath (dann zu verwenden mit CSIDL_PROGRAM_FILES, CSIDL_WINDOWS).
Alternativ könntest Du auch die Umgebungsvariable PROGRAMFILES (SYSTEMROOT) auslesen.
Im zweiten Falle muss dann nur der Laufwerksbuchstabe extrahiert werden.

Frank Reiser 13. Okt 2003 16:25

Re: Programmpath
 
Auch hier ein Antort von mir. Es gibt mehrere Möglichkeiten den Pfad zu bestimmen:

Delphi-Quellcode:
Var Verzeichnis:string;

begin
Verzeichnis:=GetCurrentDir; //das aktive Verzeichnis
Das Windows-Verzeichnis kann so ermittelt werden (aus der Delphi-Hilfe)

In diesem Beispiel befinden sich ein Eingabefeld und eine Schaltfläche in einem Formular. Beim Klicken auf die Schaltfläche werden das aktuelle und das Windows-Verzeichnis nach dem im Eingabefeld angegebenen Dateinamen durchsucht. Das Ergebnis der Suche wird anschließend in einem Meldungsfenster angezeigt.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

var
  buffer: array [0..255] of char;
  FileToFind: string;
begin
  GetWindowsDirectory(buffer, SizeOf(buffer));
  FileToFind := FileSearch(Edit1.Text, GetCurrentDir + ';' + buffer);
  if FileToFind = '' then
    ShowMessage('Datei ' + Edit1.Text + ' nicht gefunden.')
  else
    ShowMessage('Datei ' + FileToFind + ' gefunden.');

end;
[edit=Christian Seehase]Delphi-Tags gesetzt. Bitte künftig selber machen. Danke. Mfg, Christian Seehase[/edit]

Tom 13. Okt 2003 16:28

Re: Programmpath
 
Zwischenfrage: Was wird gesucht?

1) Der Pfad, in den Dein Programm installiert ist?
2) Der Vorgabepfad, wo normalerweise alle Programme installiert werden (aber nicht müssen!)?

Tom 13. Okt 2003 16:30

Re: Programmpath
 
Zitat:

Zitat von Frank Reiser
Verzeichnis:=GetCurrentDir; //das aktive Verzeichnis

Die Benutzung dieser Funktion sollte IMHO mit Enterbung bestraft werden.

Wormid 13. Okt 2003 16:36

Re: Programmpath
 
Zitat:

Zitat von silent
hallo, nein, so ein langer code kann nicht nur dazu da sein die default ordner zu finden. (aber danke ;))

Hast Du Dir den Source da mal ernsthaft angesehen? IMHO sind da mehere verschiedene Methoden aufgezeigt, wie man an die verschiedensten Ordner rankommt!

Gruß

Wormid

Pseudemys Nelsoni 13. Okt 2003 16:42

Re: Programmpath
 
hallo christian, guvck ich mir gleich mal an :)

an die anderen: ich suche kein file in einem win/programm ordner, sondern ich suche ledeglich die namen des WindowsProgramm Ordners... bei der deutschen windows version heisst der "Programme", bei der englischen z.b "program files"

nTE 13. Okt 2003 17:03

Re: Programmpath
 
Also bei mir unter Windows 2000 steht dieser Pfad in der Registry unter:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion
Schlüssel: ProgramFilesDir

Für Windows 98 habe ich das mal eben überprüft und da ist es genauso.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:26 Uhr.
Seite 1 von 3  1 23      

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