VBScript Logonscript - Funktioniert per manuellem Aufruf, aber nicht als Logonscript
Hallo ans Forum
Wir haben hier eine 2003 Domäne mit Windows XP Pro SP3 Clients. Ich habe relativ frisch in diesem Betrieb angefangen und habe als eine der ersten Jobs den Auftrag bekommen, das Logonscript frisch zu schreiben. Vorher wurden einzelne, zusammengefrickelte Batches verwendet und fast jeder User hatte einen eigenen Batch auf der Netlogon-Freigabe. Ich wollte das nun ändern. Nun habe ich ein VBScript geschrieben, welches anhand eines CSV-Files die richtigen Laufwerke verbindet. Das CSV ist folgendermassen aufgebaut:
USER;LWB;PATH
User1;G:;\\FS1\Share1$
User1;Q:;\\FS1\ShareAB$
User2;G:;\\FS2\ShareB$
User3;P:;\\FS1\Share2$
usw....
Hier ist der dafür verantwortliche Codeschnippsel ("DC" ist ein Platzhalter für meinen Domänencontroller):
Ich rufe also das CSV (welches auch im Netlogon-Share liegt) mit Datenbanktechniken auf, spule es mit der DO UNTIL Schleife durch und wenn Zelle "USER" der aktuellen Zeile = Benutzername ist, verbinde ich das Laufwerk anhand der Infos in den Spalten "LWB" und "PATH".
Das Script funktioniert. Aber nur solange ich es entweder per Doppelklick, im CMD-Fenster per CScript.exe oder per WScript.exe aufrufe. Wenn ich es hingegen bei meinem AD-Benutzer als Loginscript hinterlege, werden die Laufwerke nicht verbunden. Wieso das? Das Script funktioniert. Auch die anderen Dinge, die das Script ausserdem noch macht (z.B. zuerst alle Laufwerke trennen und Anmeldezeit in ein Logfile schreiben) funktionieren tiptop. Nur dieser Teil wird wie nicht ausgeführt. Woran könnte das liegen?
Gruss
TuXHunT3R
Wir haben hier eine 2003 Domäne mit Windows XP Pro SP3 Clients. Ich habe relativ frisch in diesem Betrieb angefangen und habe als eine der ersten Jobs den Auftrag bekommen, das Logonscript frisch zu schreiben. Vorher wurden einzelne, zusammengefrickelte Batches verwendet und fast jeder User hatte einen eigenen Batch auf der Netlogon-Freigabe. Ich wollte das nun ändern. Nun habe ich ein VBScript geschrieben, welches anhand eines CSV-Files die richtigen Laufwerke verbindet. Das CSV ist folgendermassen aufgebaut:
USER;LWB;PATH
User1;G:;\\FS1\Share1$
User1;Q:;\\FS1\ShareAB$
User2;G:;\\FS2\ShareB$
User3;P:;\\FS1\Share2$
usw....
Hier ist der dafür verantwortliche Codeschnippsel ("DC" ist ein Platzhalter für meinen Domänencontroller):
Set wshNetwork = CreateObject("WScript.Network")
Username = wshNetwork.UserName
Const adOpenStatic = 3
Const adLockOptimistic = 3
Const adCmdText = &H0001
Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")
LWFilePath = "\\DC\netlogon"
objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & LWFilepath & ";" & _
"Extended Properties=""text;HDR=YES;FMT=Delimited"""
objRecordset.Open "SELECT * FROM Laufwerke.csv", _
objConnection, adOpenStatic, adLockOptimistic, adCmdText
Do Until objRecordset.EOF
if objRecordset.Fields.Item("USER") = Username Then
LWB = objRecordset.Fields.Item("LWB")
PATH = objRecordset.Fields.Item("PATH")
wscript.echo objRecordset.Fields.Item("USER") & " " & LWB & " " & PATH
wshNetwork.MapNetworkDrive LWB, PATH, false
End if
objRecordset.MoveNext
Loop
Ich rufe also das CSV (welches auch im Netlogon-Share liegt) mit Datenbanktechniken auf, spule es mit der DO UNTIL Schleife durch und wenn Zelle "USER" der aktuellen Zeile = Benutzername ist, verbinde ich das Laufwerk anhand der Infos in den Spalten "LWB" und "PATH".
Das Script funktioniert. Aber nur solange ich es entweder per Doppelklick, im CMD-Fenster per CScript.exe oder per WScript.exe aufrufe. Wenn ich es hingegen bei meinem AD-Benutzer als Loginscript hinterlege, werden die Laufwerke nicht verbunden. Wieso das? Das Script funktioniert. Auch die anderen Dinge, die das Script ausserdem noch macht (z.B. zuerst alle Laufwerke trennen und Anmeldezeit in ein Logfile schreiben) funktionieren tiptop. Nur dieser Teil wird wie nicht ausgeführt. Woran könnte das liegen?
Gruss
TuXHunT3R
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 190312
Url: https://administrator.de/forum/vbscript-logonscript-funktioniert-per-manuellem-aufruf-aber-nicht-als-logonscript-190312.html
Ausgedruckt am: 22.12.2024 um 06:12 Uhr