Laufwerksmapping aller Freigegebenen Ordner einer OU mit vbScript
Ich möchte im Loginscript alle Freigegebenen Ordner einer OU mappen. Das ganze soll in vbScript realisiert werden.
Hallo allerseits.
Ich stehe vor dem o.g. Problem. Bin leider mit Googlen und suchen hier im Forum nicht weiter gekommen.
Ich habe im AD unterhalb einer OU die jeweiligen Benutzer und Ordnerfreigaben angelegt. Bei den Ordnerfreigaben in den Schlüsselwörtern sind die Laufwerksbuchstaben (können ggf. auch mehrere sein) hinterlegt.
Jetzt soll, wenn sich der Benutzer anmeldet, geprüft werden in welcher OU er angelegt wurde. Anschließend sollen alle Ordnerfreigaben der OU gemappt werden. Vorzugsweise sollen die Laufwerksbuchstaben aus den Schlüsselwörtern der Ordnerfreigabe (im AD) gelesen werden - wenn mehrere hinterlegt sind, sollte dann die Freigabe entsprechend als mehrere Laufwerke eingebunden werden (finde ich praktisch - wenn es einen guten Grund für eine andere Lösung gibt bin ich ganz Ohr (oder Auge ).
Bin leider nicht so der Crack in vbScript. Bin daher für jeden Lösungsansatz oder Codeschnipsel dankbar.
Falls es eine Lösung in KIXtart gibt, wäre mir das fast noch lieber.
mfG mhard666
Hallo allerseits.
Ich stehe vor dem o.g. Problem. Bin leider mit Googlen und suchen hier im Forum nicht weiter gekommen.
Ich habe im AD unterhalb einer OU die jeweiligen Benutzer und Ordnerfreigaben angelegt. Bei den Ordnerfreigaben in den Schlüsselwörtern sind die Laufwerksbuchstaben (können ggf. auch mehrere sein) hinterlegt.
Jetzt soll, wenn sich der Benutzer anmeldet, geprüft werden in welcher OU er angelegt wurde. Anschließend sollen alle Ordnerfreigaben der OU gemappt werden. Vorzugsweise sollen die Laufwerksbuchstaben aus den Schlüsselwörtern der Ordnerfreigabe (im AD) gelesen werden - wenn mehrere hinterlegt sind, sollte dann die Freigabe entsprechend als mehrere Laufwerke eingebunden werden (finde ich praktisch - wenn es einen guten Grund für eine andere Lösung gibt bin ich ganz Ohr (oder Auge ).
Bin leider nicht so der Crack in vbScript. Bin daher für jeden Lösungsansatz oder Codeschnipsel dankbar.
Falls es eine Lösung in KIXtart gibt, wäre mir das fast noch lieber.
mfG mhard666
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 125712
Url: https://administrator.de/contentid/125712
Ausgedruckt am: 26.11.2024 um 14:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo!
Wenn ich Sie richtig verstanden habe sieht Ihre AD Stucktur ungefähr so aus:
root
>UO1
------> BeuntzerA
------> BenutzerB
------>FreigabeNameA
>UO2
------> BeuntzerC
------> BenutzerD
------>FreigabeNameB
------>FeigabenNameC
und Sie wollen jetzt Abhänging vom Benutzer in dessen übergeordneter UO nach beinhalteten Freigabe Namen suchen und dies je nach Laufwerksbuchstabe mappen?
mfg Ametrin
Wenn ich Sie richtig verstanden habe sieht Ihre AD Stucktur ungefähr so aus:
root
>UO1
------> BeuntzerA
------> BenutzerB
------>FreigabeNameA
>UO2
------> BeuntzerC
------> BenutzerD
------>FreigabeNameB
------>FeigabenNameC
und Sie wollen jetzt Abhänging vom Benutzer in dessen übergeordneter UO nach beinhalteten Freigabe Namen suchen und dies je nach Laufwerksbuchstabe mappen?
mfg Ametrin
Hmm ich weiß nicht wie man diesen Blau weißen Text macht.
Habe 2 Vorschläge für dich
1.) Wenn du mit Windows Server 2008 arbeitest funktionieren dir GPO Preferenzes ganz gut, ansonnsten würde ich dir empfehlen einfach Gruppen zu machen die der User(in) dann erhält. Auf die Art kann man dann bequem Freigaben oder Drucker adden die in einer anderen UO sind.
2.) Wenn du keine GPO Preferences einsetzen kannst oder willst dann hier ein Auszug eines simplen Logonscripts (simpel deswegen da keine Fehlerabfrage )
Habe 2 Vorschläge für dich
1.) Wenn du mit Windows Server 2008 arbeitest funktionieren dir GPO Preferenzes ganz gut, ansonnsten würde ich dir empfehlen einfach Gruppen zu machen die der User(in) dann erhält. Auf die Art kann man dann bequem Freigaben oder Drucker adden die in einer anderen UO sind.
2.) Wenn du keine GPO Preferences einsetzen kannst oder willst dann hier ein Auszug eines simplen Logonscripts (simpel deswegen da keine Fehlerabfrage )
Set wshShell = CreateObject("WScript.Shell")
Set wshNetwork = CreateObject("WScript.Network")
Set colDrives = wshNetwork.EnumNetworkDrives
Set objDomain = getObject("LDAP://rootDse")
DomainString = objDomain.Get("dnsHostName")
UserString = wshNetwork.UserName
Set UserObj = GetObject("WinNT://" & DomainString & "/" & UserString)
On Error Resume Next
'---------------------Drucker & Laufwerke löschen------------------------------------
For i = 0 to colDrives.Count-1 Step 2
wshNetwork.RemoveNetworkDrive colDrives.Item(i)
Next
'---------------------------Die nächsten 5Zeilen sind nicht von mir--------------------
Set wshNet = CreateObject("WScript.Network")
Set wshPrn = wshNet.EnumPrinterConnections
For x = 0 To wshPrn.Count - 1 Step 2
If Left(wshPrn.Item(x+1),2) = "\\" Then wshNet.RemovePrinterConnection wshPrn.Item(x+1),True,True
Next
'----------------------Gruppen Laufwerke & Drucker-----------------------------------
For Each GroupObj In UserObj.Groups
Select Case GroupObj.Name
case "Freigabe1"
ret = WSHNetwork.RemoveNetworkDrive("V:", True, True)
ret = WSHNetwork.MapNetworkDrive("V:", "\\SERVER\SHARENAME", False)
objShell.NameSpace("V:").Self.Name = "ARBEITSLAUFWERK"
case "Drucker1"
wshNetwork.AddWindowsPrinterConnection "\\SERVER\PRINTERSHARENAME",True
End Select
Next