venicebeach
Goto Top

Pfadvariable (Path) über Login (KIX) Script setzen

Gibt es eine Möglichkeit eine Pfadvariable mittels eines Kix -Logginscripts hinzu
zu fürgen?

Wenn ja, wie geht das?

Content-Key: 99857

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

Printed on: April 25, 2024 at 11:04 o'clock

Member: VeniceBeach
VeniceBeach Oct 22, 2008 at 06:38:23 (UTC)
Goto Top
keiner ne Ahnung? Kommt schon ich glaube an euch, das wird hier doch einer wissen?
Member: schray
schray Oct 22, 2008 at 07:44:17 (UTC)
Goto Top
Hallo VeniceBeach,

du mußt nur im folgendem regestry-Key deinen Pfad hinzufügen:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Enviroment\Path

und einen Neustart durchführen

Mit freundlichen Grüßen

Ulrich
Member: VeniceBeach
VeniceBeach Oct 22, 2008 at 10:44:57 (UTC)
Goto Top
danke erstmal. Und wie würde ich das dann in einem kix script verpacken, damit dies automatisch bei allen usern funktioniert die sich anmelden?
Member: VeniceBeach
VeniceBeach Oct 22, 2008 at 14:30:26 (UTC)
Goto Top
kann doch nicht sein, dass keiner ne Ahnung hat. Ist das nicht irgendwie möglich?
Member: schray
schray Oct 23, 2008 at 04:02:48 (UTC)
Goto Top
Hallo VeniceBeach,

ich denke nach...

Ulrich
Member: schray
schray Oct 23, 2008 at 07:31:22 (UTC)
Goto Top
Hallo VeniceBeach,

hier die Lösung:

; --------------------------------------------
; pfad.kix
; ---------------------------------------------
; Pfad ins globale Pfadverzeichnis importieren
; ---------------------------------------------
; Ulrich Eckerle (www.administrator.de: schray)
; ---------------------------------------------
; Updated 23.10.2008 By Ulrich Eckerle
; ---------------------------------------------
; Dependencies.....
;  - KiXtart Version 4.6 or later
; ---------------------------------------------
; Variables
$Pfad =   "C:\temp\"  
$RKey = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"  
; ---------------------------------------------
; Auslesen der Pfade
$UrPfade = ReadValue ($RKey, "Path")  
; ---------------------------------------------
; Überprüfung ob der Pfad schon in den Globalen Pfaden existiert
$Fund = InStr ($UrPfade, ";" + $Pfad)  
; ---------------------------------------------
; Check des Pfades
If Exist ($Pfad)
         IF $Fund = 0
                  ; --------------------------------------------
                 ; Schreiben des zusätzlichen Pfads
                 WriteValue ($RKey, "Path",$Urpfade + ";" + $Pfad, "REG_EXPAND_SZ")  
                 ; --------------------------------------------
                 ; Globale Pfade werden erst nach dem Neustart eingelesen
                 shutdown("", "Die Pfade wurden neu gesetzt, wir muessen durchstarten!!!", 1, 1, 1)  
         Endif
Else
         ? "Pfad existiert nicht."  
         Sleep 1
Endif

Grüße Ulrich
Member: VeniceBeach
VeniceBeach Oct 23, 2008 at 09:45:26 (UTC)
Goto Top
Vielen Dank für deinen Einsatz. Das ist ja ein Suoper sauberes Script, dass du hier geschrieben hast!!
Member: VeniceBeach
VeniceBeach Oct 23, 2008 at 10:05:16 (UTC)
Goto Top
irgend etwas scheint noch nicht zu klappen.
Hats bei dir funktioniert?

bei mir kommt die meldung "Pfad existiert nicht"
Member: schray
schray Oct 23, 2008 at 10:09:13 (UTC)
Goto Top
Ja bei mir funkts.

Was für einen Pfad hats Du zur Variablen $Pfad angegeben?
Member: VeniceBeach
VeniceBeach Oct 23, 2008 at 14:32:39 (UTC)
Goto Top
Ich habe "C:\temp\"

durch:

"p:\SAR\Deploy31;p:\SAR\Deploy21;p:\SAR\Deploy"

getauscht
Member: schray
schray Oct 23, 2008 at 15:28:13 (UTC)
Goto Top
ist P ein lokales Laufwerk ???

Wenn P gemappt wird funktioniert es nicht und Du bekommst auch Probleme beim Starten.

Ulrich
Member: VeniceBeach
VeniceBeach Oct 24, 2008 at 08:13:14 (UTC)
Goto Top
nein P ist ein gemapptes Netzlaufwerk.
Dieses wird im Loginscript ebenfalls verbunden.

Ist es damit nicht möglich?
Member: schray
schray Oct 24, 2008 at 08:26:07 (UTC)
Goto Top
Nein !!!

Wenn Du mein IF Exist herausnimmt, kann es passieren, das Du bei einem Neustart unterumständen dein Windows zerschießt.

Es ist anzumerken, das die globalen Pfade wirklich beim Systemstart existieren müssen. Und da ist noch kein Netzlaufwerk gemappt.

Mit freundlichen Grüßen

ULrich