SAM1 11 Geschrieben 23. Dezember 2005 Melden Teilen 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 Zitieren Link zu diesem Kommentar
Finanzamt 76 Geschrieben 23. Dezember 2005 Melden Teilen 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! Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 23. Dezember 2005 Melden Teilen 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 Zitieren Link zu diesem Kommentar
zahni 563 Geschrieben 23. Dezember 2005 Melden Teilen 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 Zitieren Link zu diesem Kommentar
SAM1 11 Geschrieben 23. Dezember 2005 Autor Melden Teilen 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 Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 23. Dezember 2005 Melden Teilen Geschrieben 23. Dezember 2005 Gern geschehen. :) Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.