Programm-Folder-Konstanten

22/11/2010 - 06:12 von Georg Jung | Report spam
Hallo,

gibt es 2 CSDILs, wovon eine mir

A) Auf 32bit-Systemen den Ordner C:\Programme (also 32bit) zurückgibt
B) Auf 64bit-System den Ordner C:\Programme (also 64bit) zurückgibt

und die andere mir

A) Auf 32bit-System den Ordner C:\Programme (also 32bit) zurückgibt
B) Auf 64bit-Systemen den Ordner C:\Program Files (x86) (also 64bit)
zurückgibt?

Es geht darum, dass ich immer auf die Existenz eines bestimmten
Programmes prüfen muss.

Dieses Programm kann sowohl in der 64bit-Version als auch in der
32bit-Version installiert sein, deshalb muss ich explizit zwischen dem
32bit- und dem 64bit-Programm-Ordner unterscheiden.

Das Programm schreibt sich nicht in die Registry, ich muss also
"hàndisch" nachprüfen, ob sie in einem der beiden Ordner ist.

Ich habe bisher keine Konstanten gefunden, die mir die obigen
Verzeichnisse in dieser Form zurückgeben würden.

Mit freundlichen Grüßen
Georg Jung
 

Lesen sie die antworten

#1 Frank Müller
25/11/2010 - 01:57 | Warnen spam
Hallo Georg,

Es geht darum, dass ich immer auf die Existenz eines bestimmten
Programmes prüfen muss.

Das Programm schreibt sich nicht in die Registry, ich muss also
"hàndisch" nachprüfen, ob sie in einem der beiden Ordner ist.



Was machst du wenn der User z.B. in D:\Programme oder
sonst wo hin installiert hat? Wenn du so etwas nicht
ausschliessen kannst bleibt dir nur die Möglichkeit alle
Platten / Partionen zu durchsuchen. (Registry geht ja nicht
wie du sagst) Theoretisch könnte das Programm sogar
auf einem Netzwerklaufwerk (Ohne LW-Buchstaben)
installiert sein.

Gibt es nicht ein anderes Merkmal dieses Programms
welches eindeutig ist? Z.b. eine DLL die nur von diesem
Programm verwendet wird? Die wàre dann ja einfacher
zu finden als die Exe des Programms.

Gruß,
Frank

Ähnliche fragen