SAM1 11 Geschrieben 23. Dezember 2005 Melden Geschrieben 23. Dezember 2005 Hallo Board, Salve @all, Ich habe ein Problem mit dem >SET<-Befehl. Umgebungsinfos: Win 2003 Domäne, XP und XP-SP2 Clients Ich muß auf allen Clients eine Umgebungsvariable (Benutzer-) ändern. Ich möchte es über die Anmeldescripte steuern. Nun zum Problem: Das Script wird ausgeführt und die alte Variable gelöscht und die neue erzeugt. Soweit so gut... aber halt nicht wirklich.... Wenn ich das Script mit Pausen laufen lasse und mir nach jedem Schritt mir über den Befehl [sET] die Variablen anzeigen lasse, ist (scheint) alles ok. Wenn das Script beendet ist, sind die Änderungen weg. Auch während des "Ablaufs" (in den Pausen) kann ich unter "Systemeigenschaften - Erweitert - Umgebungsvariable" keine Änderungen nachvollziehen/erkennen. Warum???? ich habe schon fast (eine Möglichkeit scheint ja noch zu fehlen ( ;-) ) alles Ausprobiert. Script-Beispiel (Auszug): - ... - Set (-> zum Anzeigen) - Pause (-> zum lesen) - Set Super_File= (-> zum Löschen) - Set (-> zum Anzeigen) - Pause (-> zum lesen) - Set Super_File=\\Server\Freigabe\file.ini - Set (-> zum Anzeigen) - Pause (-> zum lesen) - ... Ich hoffe ihr könnt mir helfen... Gruß und schon mal Danke SAM
Finanzamt 93 Geschrieben 23. Dezember 2005 Melden Geschrieben 23. Dezember 2005 Hallo, Wenn Du mit einer Batch Umgebungsvars (neu) definierst, dann ist das so, als ob Du im Konsolenfenster mit SET Beispiel=Beispieltext eine Var setzt. Die ist aber nur in diesem Konsolenfenster sichbar. Startest Du CMD ein 2. Mal und tippst SET Beispiel ein, wirst Du die Meldung bekommen, daß die Umgebungsvar Beispiel nicht definiert sei. Um die Umgebungsvar dauerhaft zu setzen, mußt Du sie in die Registry schreiben. Die Umgebungsvars für einzelne User stehen in HKCurrentUser\Environment und die systemweiten Vars in HKLocalMachine\System\CurrentControlSet\Control\Session Manager\Environment. Letzteres willst Du aber offensichtlich nicht ändern. Um in die Registry zu schreiben, brauchst Du entweder entsprechende Tools, die Du dann vom Anmeldescript (Batch) aus mit entsprechenden Parametern aufrufst oder Du machst das Anmeldescript gleich über VBasic, Delphi, C, ... Ich mache solche Sachen mit Delphi. Dazu und zu den anderen Sprachen findest Du im Web etliche Tips und Beispielcode. Schau Dir z.B. http://www.microsoft.com/germany/msdn/library/visualtools/vb6/UmgebungsvariableMitVisualBasicAuslesenUndSetzen.mspx an. Zu Konsolentools google mal mit [umgebungsvariable Batch Registry] Gegrüßt!
lefg 276 Geschrieben 23. Dezember 2005 Melden Geschrieben 23. Dezember 2005 Hallo, zum permanenten Setzen von Variablen schau dir mal den Befehl setx.exe an! Google hilft beim Finden. Viel Erfolg Edgar
zahni 587 Geschrieben 23. Dezember 2005 Melden Geschrieben 23. Dezember 2005 Dauherhafte Variablen werden in die Registry geschrieben. Ensprechende Funktionen findest Du auch in http://www.kixtart.org/ . Für systemweite Variablen brauchst Du Admin-Rechte. -Zahni
SAM1 11 Geschrieben 23. Dezember 2005 Autor Melden Geschrieben 23. Dezember 2005 Hallo, danke für eure schnellen Antworten. Habe das Problem mit Tip von Edgar (lefg), also mit der >SetX.exe< angegangen und in den Griff bekommen. :D Mit dem "Tool" war das kein Problem. Somit einen extra Dank und Gruß an Edgar. Gruß und ein frohes Fest für euch und eure Anhänge SAM
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden