mfinkler
Goto Top

DOS Variable ändern

Hallo,

wie kann ich Variablen außerhalb einer cmd Sitzung setzen, z.B. hab ich folgende cmd:

echo %clientname%
set clientname=TEST
echo %clientname%


als Ausgabe bekomme ich wie erwartet TEST, wenn ich diese dann erneut ausführe bekomm ich zuerst allerdings wieder den alten Clientnamen. Ich würd gern die Variable für die komplette Sitzung ändern, hat jemand eine Idee?

Gruß

Content-Key: 29389

Url: https://administrator.de/contentid/29389

Printed on: April 16, 2024 at 14:04 o'clock

Member: docsam
docsam Mar 31, 2006 at 06:20:29 (UTC)
Goto Top
Hi,

Du könntest unter Systemsteuerung/System/Erweitert/Umgebungsvariablen

die Dinge ändern. Dies ist imho aber permanent.

MfG
Member: Biber
Biber Mar 31, 2006 at 06:26:55 (UTC)
Goto Top
Moin Mfinkler,
wenn ich diese dann erneut ausführe bekomm ich zuerst allerdings wieder den alten ...
Demnach heißt wieder ausführen bei Dir, eine neue Instanz der CMD.exe starten, z.B. einen Doppelklick auf eine Batchdatei machen.

Dann musst du das Environment ändern, das jede CMD.exe bei Starten lädt. Dazu gibt es in den M$-ResKits eine SetX.exe, die das kann.

Also musst du schreiben
Set clientname=TEST (dann hat es die aktuelle CMD.exe-Instanz)
SetX clientname TEST ( dann hat es auch die nächste CMD.exe)

Allerdings gilt das dann nicht nur "für die ganze Session", also bis zum Abmelden, sondern immer bei diesem Benutzer.
Bis Du es wieder änderst.

In welchem Szenario kann Dein Vorgehen denn sinnvoll sein? *neugierig frag

Gruß Biber
Member: Mfinkler
Mfinkler Mar 31, 2006 at 09:41:22 (UTC)
Goto Top
setx geht auch nicht.
hab mir aber eben ein VB Programm geschrieben.

Es geht darum, dass die User (Citrix)Verbindungen trennen können und woanders wieder aufnehmen sollen. Da wir in unsrer Farm Printserver einsetzen, die den %clientname% mappen, muss der geändert werden.

Mein VB Programm schreibt allerdings nur in HKEY_C_U\Volatile Environment den richtigen Clientnamen in "CLIENTNAME", von dort lass ich ihn einfach wieder auslesen und arbeite mit dem weiter.

Ne andere Lösung hab ich nicht gefunden, und diese klappt super.

Gruß