ProgramFiles unter verschiedenen Systemen erkennen

mdo

Mitglied
Hallo!
Ich suche eine Möglichkeit den Ordner C:\Programme auf einem beliebigen System zu finden. Dabei wollte ich folgendes benutzen:
Code:
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles)
Allerdings gibt es da ein kleines Problem... Ich konnte es bisher unter zwei verschiedenen Systemen testen:
  • Windwos XP 32bit: C:\Programme
  • Windows Server 2003 32bit: C:\Program Files

Der Ordner C:\Program Files existiert jedoch unter Windows Server 2003 garnicht... Es handelt sich um die deutsch lokalisierte Version. Demnach ist der Name des Ordners C:\Programme. Und da will ich auch hin! Nun, wie stelle ich das an?
Ich weiß, dass der Ordner unter Windows Server 2003 intern immer C:\Program Files heißt. Und dass in der Desktop.ini ein Link auf die deutsche Bezeichnung zu sein scheint... Aber das muss ich doc auch anderes in Erfahrung bringen können, oder? Oder muss ich "C:\Programme" wirklich hart den Code schreiben?
Das blöde an der Geschichte ist nämlich, dass ich zB eine Textdatei in %ProgramFiles%\Test auslesen will. Wenn ich das allerdings unter Windows 2003 Server versuche, gibts ne Exception... Is ja auch klar, es gibt ja eigentlich kein C:\Program Files\Test, sondern nur ein C:\Programme\Test...
Ärgerlich! Jemand ne Idee?

Danke,
mdo
 
Ahhh, sorry. Hat sich erledigt, Fehler von mir!
Sollte besser mal meinen Code genauer lesen... Mein Fehler!
 
Zurück