Umgebungsvariable in VBS setzen bzw. ändern

  • VBScript

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Heinzs.

    Umgebungsvariable in VBS setzen bzw. ändern

    Hallo alle zusammen,

    folgendes VBS Script setzt eine Umgebungsvariable, ruft Excel auf. Dort lese ich die Umgebungsvariable aus. Dieses funktioiniert problemlos. Wenn ich jedoch danach im VBS Script die Variable löschen / ändern will, schlägt das fehl:

    Hier das Sript a.vbs (auch in beigefügter ZIP enthalten)

    Visual Basic-Quellcode

    1. Set objShell = CreateObject("WScript.Shell")
    2. Set objEnv = objShell.Environment("USER")
    3. objEnv("excel_hs") = "autorun"
    4. ' Hier wird Excel aufgerufen und Makro ausgeführt
    5. objEnv("excel_hs") = "a"


    Nach Ausführung sehe ich im cmd Fenster mit set immer noch den Inhalt autorun in der Variable excel_hs.

    Ich verwende Windows 11 Enterprise bzw. Windows 2019 Server.

    Hat jemand eine Idee?

    Danke für Hilfe!

    MfG

    Heinz

    Code-Tags eingefügt. ~Thunderbolt
    Dateien
    • a.zip

      (261 Byte, 9 mal heruntergeladen, zuletzt: )

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Was zeigt das VBS an, wenn du dir die Werte ausgeben lässt, also wie folgt?

    Visual Basic-Quellcode

    1. Set objShell = CreateObject("WScript.Shell")
    2. Set objEnv = objShell.Environment("USER")
    3. objEnv("excel_hs") = "autorun"
    4. ' Hier wird Excel aufgerufen und Makro ausgeführt
    5. msgbox objEnv("excel_hs")
    6. objEnv("excel_hs") = "a"
    7. msgbox objEnv("excel_hs")

    Bei mir ist es korrekt. In der Eingabeaufforderung sehe ich die Variable allerdings gar nicht.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum