Windows Root Verzeichnis bei Mehrfachinstallationen ermitteln



  • Hallo zusammen,
    ich habe folgendes Problemchen: Ich muss bei einem System, welches mehrere (unterschiedliche) Windowsinstallationen besitzt, das aktive Rootverzeichnis in einen String speichern (z.B. E:\Windows).
    Bisher hab ich das Verzeichnis ganz einfach über GetWindowsDirectory() bekommen, aber es wurde mir gesagt, dass diese Funktion bei Mehrfachinstallationen versagt (belehrt mich ruhig eines besseren, dann wäre mein Problem geloest 😉 ).
    Ich hab mir jetzt überlegt den Pfad über die Registry auslesen zu lassen, würde aber gerne wissen, ob es da nicht noch eine elegantere (einfachere) Lösung gibt.

    Vielen Dank schonmal.



  • Was ist denn ein "Root-Verzeichnis"?


  • Mod

    Diese Funktion ist OK solange Du nicht eine Terminalserver Installation hast!

    Ansonsten SHGetFolderPath mit CSIDL_WINDOWS.

    Dito Environment Variable %SYSTEMROOT%



  • @ Jochen:

    Was ist denn ein "Root-Verzeichnis"?

    z.B. E:\Windows

    @ Martin:
    Das heißt ich bekomm über GetWindowsDirectory() immer nur das Verzeichnis, indem ich aktuell arbeite (solange ich nicht eine Terminalserver Installation hab).
    Wenn ich z.B. WinXP auf E:\ installiert habe und dort angemeldet bin, gleichzeitig auf C:\ Win2K installiert ist, ermittelt die Funktion mir dann E:\Windows?

    Ich will mich nur nochmal absichern, da ich es im Moment nicht testen kann.


  • Mod

    Ja! Solange Terminalserver nicht verwendet wird, also Deine Software im Terminalserver ausgeführt wird kanst Du GetWindowsDirectory verwenden.

    Ich würde %SYSTEMROOT% verwenden.



  • Danke für die Info 👍


Anmelden zum Antworten