VB-Script für Überprüfung der PC-OU bei Anmeldung und gleichzeitiges mappen von festgelegten netzlaufwerken
Hab leider noch nich so wirklich erfahrung mit VB-Scripts
Hallo leute,
hab nen kleinen problem und ich hoffe ihr könnt mir helfen.
Ich hab meine Ausbildung als FISI vor 4 Mon angefangen und habe noch nich mit VB-Scripts (nut mir Batchdateien) gearbeitet.
Ich soll jetzt ein Script schreiben, welches bei uns in der Firma bei der Anmeldung an einem PC über das AD die Computer und Benutzer-OU überprüft und dann die dazugehörigen Netzlaufwerke mappt.
Es soll einfach nur eine erleichterung sein weil bei uns die Azubis in verschiedenen Abteilungen arbeiten und wo verschiedene Netzlaufwerke zur verfügung stehen sollen.
Ich bin echt ratlos.....=(
hab schon suchfunktion benutzt aber so wirklich viel hab ich da nich gefunden und wenn dann war das nich das passende.
Ich hoffe ihr könnt mich helfen.
MFG
Tobias
Hallo leute,
hab nen kleinen problem und ich hoffe ihr könnt mir helfen.
Ich hab meine Ausbildung als FISI vor 4 Mon angefangen und habe noch nich mit VB-Scripts (nut mir Batchdateien) gearbeitet.
Ich soll jetzt ein Script schreiben, welches bei uns in der Firma bei der Anmeldung an einem PC über das AD die Computer und Benutzer-OU überprüft und dann die dazugehörigen Netzlaufwerke mappt.
Es soll einfach nur eine erleichterung sein weil bei uns die Azubis in verschiedenen Abteilungen arbeiten und wo verschiedene Netzlaufwerke zur verfügung stehen sollen.
Ich bin echt ratlos.....=(
hab schon suchfunktion benutzt aber so wirklich viel hab ich da nich gefunden und wenn dann war das nich das passende.
Ich hoffe ihr könnt mich helfen.
MFG
Tobias
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 103771
Url: https://administrator.de/forum/vb-script-fuer-ueberpruefung-der-pc-ou-bei-anmeldung-und-gleichzeitiges-mappen-von-festgelegten-103771.html
Ausgedruckt am: 21.02.2025 um 11:02 Uhr
1 Kommentar
Moin moin,
Mit VB Script eigentlich gar nicht so schwer:
Das Script geht bei uns noch weiter, du musst es also nach deinen Bedürfnissen anpassen und gegebenenfalls ändern.
Viele der Variablen brauchst du gar nicht, aber ich war jetzt zu faul die irrelevanten zu löschen...
Aber hiermit hast du einen Denkanstoß
Gruß Keks
Mit VB Script eigentlich gar nicht so schwer:
Dim strComputerName
Dim strUserName
Dim strDomainName
Dim objADSysInfo
Dim wshNetwork
Dim WshShell
Dim WshSysEnv
Dim oShell
Dim oShFolder
Dim objUser
Dim objOU
Dim rootDSE
Dim oPq
Set wshNetwork = WScript.CreateObject( "WScript.Network" )
Set WshShell = WScript.CreateObject("WScript.Shell")
Set WshProcEnv = WshShell.Environment("Process")
Set WshUserEnv = WshShell.Environment("USER")
Set objADSysInfo = CreateObject("ADSystemInfo")
Set oShell = CreateObject("Shell.application")
Set oShFolder = oShell.Namespace(17)
Set objUser = GetObject("LDAP://" & objADSysInfo.UserName)
Set objOU = GetObject(objUser.parent)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Server1 = "Server1"
Server2 = "server2"
Server3 = "usw"
Server4 = "etc"
'Warten bis der Anmeldename des Users ermittelt wurde
Do While wshNetwork.username = ""
WScript.Sleep 250
Loop
strComputerName = wshNetwork.computerName
strUserName = wshNetwork.userName
strDomainName = wshNetwork.userDomain
'Aufruf der Subroutine zum Laufwerkmappen
Call subprintermap
Sub subprintermap()
' ### ADSI abfragen
adspath = "WinNT://" & strDomainName & "/" & strUserName
Set adsobj = GetObject( adspath )
'vorhandene Laufwerke löschen
On Error Resume Next
wshNetwork.RemoveNetworkDrive "L:", True, True
'wshNetwork.RemoveNetworkDrive "P:", True, True
'wshNetwork.RemoveNetworkDrive "T:", True, True
''für jeden gültige Laufwerke mappen
wshNetwork.MapNetworkDrive "P:", "\\"&Server1&"\Freigabe\für\jeden"
'###Laufwerk "K:" für spezielle Anwender auf bestimmte Verzeichnisse mappen
Select Case (StrUserName)
'Anwender User 1
Case "username1"
wshNetwork.MapNetworkDrive "K:", "\\"&Server1&"\Pfad\zum\Ordner"
'Anwender User 2
Case "username2"
wshNetwork.MapNetworkDrive "K:", "\\"&Server1&"\anderer\Pfad\zum\Ordner"
End Select
'###AD Gruppen auswerten
For Each prop In adsobj.groups
'###Laufwerk U:
If prop.name="Dom-Gruppe" Then
wshNetwork.MapNetworkDrive "L:", "\\"&Server3&"\Pfad"
wshNetwork.MapNetworkDrive "U:", "\\"&Server1&"\Pfad\weitererPfad\etc"
End If
Next
End Sub
Das Script geht bei uns noch weiter, du musst es also nach deinen Bedürfnissen anpassen und gegebenenfalls ändern.
Viele der Variablen brauchst du gar nicht, aber ich war jetzt zu faul die irrelevanten zu löschen...
Aber hiermit hast du einen Denkanstoß
Gruß Keks