Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Share mapping mit VBS

Mitglied: 68955

68955 (Level 1)

25.08.2008 um 13:52 Uhr, 7659 Aufrufe

Ein kleines VBS das Shares gruppenspezifisch mappt und die Shares beim Client automatisch umbenennt!

Hier ein VB Script das verschiedene Shares auf einem Computer Gruppenspezifisch und/oder Userspezifisch hinzufügt!
Remote Shares können auch gemappt werden!
Ich habe grosse Teile des Scripts aus diesem und anderen Foren zusammengefügt und teilweise erweitert.

Das ganze ist auskommentiert, trotzdem noch einige Ergänzungen:

Unter,
'Set objDomain = getObject("LDAP://rootDse")'
'DomainString = objDomain.Get("dnsHostName")'
muss nichts geändert werden, das Script sucht sich die Angaben selbst sofern das Script in einer Domäne von einem Domänenbenutzer ausgeführt wird!


Unter,
''Map drives'
''Note the first command uses the user name as a variable to map to a user share.'
'WSHNetwork.MapNetworkDrive "u:", "\\SERVERNAME\USERSHARE\" & UserString,True'
'WSHNetwork.MapNetworkDrive "l:", "\\SERVERNAME\TRANSFERSHARE",True'
'WSHNetwork.MapNetworkDrive "t:", "\\SERVERNAME\TEMPSHARE",True'
können Shares angegeben werden die bei JEDEM User gemapt werden, zbsp. Usershares (siehe "UserString"), Transfershares etc.


Unter,
''Check for group memberships and take needed action'
'Case "GRUPPE1"'
'WSHNetwork.MapNetworkDrive "w:", "\\SERVERNAME\SHARE1",True'
Beginnt das Script mit dem ersten Mapping von Gruppenspezifischen Shares. Jeder User der in "GRUPPE1" ist bekommt "SHARE1" mit Laufwerksbuchstaben "W:" usw.

Unter,
'Case "REMOTEUSERS"'
'Set objNetwork = WScript.CreateObject("WScript.Network")'
'strLocalDrive = "O:"'
'strRemoteShare = "\\172.0.0.1\SHARE"'
'strPer = "FALSE"'
'strUsr = "BENUTZERNAME"'
'strPas = "PASSWORT"'
'objNetwork.MapNetworkDrive strLocalDrive, strRemoteShare, strPer, strUsr, strPas'
Kann ein Share gemappt werden das auf einem anderen Server oder ausserhalb der Domäne liegt. Will man ein weiteres solches Laufwerk mappen, ist zu beachten,
das die Zeile "'objNetwork.MapNetworkDrive strLocalDrive, strRemoteShare, strPer, strUsr, strPas'" für jedes weitere Laufwerk editiert werden muss. Also für das zweite Laufwerk:
'objNetwork.MapNetworkDrive1 strLocalDrive1, strRemoteShare1, strPer1, strUsr1, strPas1' und beim dritten dann jeweils mit "2" usw.


Unter,
''Rename the Drives'
'WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#TRANSFERSHARE\_LabelFromReg" , "Transfer" , "REG_SZ"'
Werden alle Shares umbenannt, da sonst die eingebundenen Laufwerke "Transfershare auf "Servername"" heissen, was relativ unschön ist, die Veränderung wird in der Registry vorgenommen da dort die Laufwerksnamen hinengeschrieben werden!


01.
ON ERROR RESUME NEXT 
02.
 
03.
Dim WSHShell, WSHNetwork, objDomain, DomainString, UserString, UserObj, Path, objNetwork, objNetwork1 
04.
'used to point at the registry to change the name of the drives 
05.
KEY_MountPoint = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\" 
06.
Set WSHShell = CreateObject("WScript.Shell") 
07.
Set WSHNetwork = CreateObject("WScript.Network") 
08.
'Automatically find the domain name 
09.
Set objDomain = getObject("LDAP://rootDse") 
10.
DomainString = objDomain.Get("dnsHostName") 
11.
WinDir = WshShell.ExpandEnvironmentStrings("%WinDir%") 
12.
 
13.
'Grab the user name 
14.
UserString = WSHNetwork.UserName 
15.
'Bind to the user object to get user name and check for group memberships later 
16.
Set UserObj = GetObject("WinNT://" & DomainString & "/" & UserString) 
17.
 
18.
'Grab the computer name for use in add-on code later 
19.
strComputer = WSHNetwork.ComputerName 
20.
 
21.
'Disconnect ALL mapped drives 
22.
Set clDrives = WshNetwork.EnumNetworkDrives 
23.
For i = 0 to clDrives.Count -1 Step 2 
24.
WSHNetwork.RemoveNetworkDrive clDrives.Item(i), True, True 
25.
Next 
26.
 
27.
'Give the PC time to do the disconnect, wait 300 milliseconds 
28.
wscript.sleep 300 
29.
 
30.
'Map drives 
31.
'Note the first command uses the user name as a variable to map to a user share. 
32.
WSHNetwork.MapNetworkDrive "u:", "\\SERVERNAME\USERSHARE\" & UserString,True 
33.
WSHNetwork.MapNetworkDrive "l:", "\\SERVERNAME\TRANSFERSHARE",True 
34.
WSHNetwork.MapNetworkDrive "t:", "\\SERVERNAME\TEMPSHARE",True 
35.
 
36.
'Now check for group memberships and map appropriate drives to add more remote shares use strlocaldrive1, strremoteshare1, strperl1, strusr1, strpas1 
37.
For Each GroupObj In UserObj.Groups 
38.
Select Case GroupObj.Name 
39.
'Check for group memberships and take needed action 
40.
Case "GRUPPE1" 
41.
WSHNetwork.MapNetworkDrive "w:", "\\SERVERNAME\SHARE1",True 
42.
Case "GRUPPE2" 
43.
WSHNetwork.MapNetworkDrive "n:", "\\SERVERNAME\SHARE2",True 
44.
Case "GRUPPE3" 
45.
WSHNetwork.MapNetworkDrive "p:", "\\SERVERNAME\SHARE3",True 
46.
Case "GRUPPE4" 
47.
WSHNetwork.MapNetworkDrive "q:", "\\SERVERNAME\SHARE4",True 
48.
Case "GRUPPE5" 
49.
WSHNetwork.MapNetworkDrive "s:", "\\SERVERNAME\SHARE5",True 
50.
Case "GRUPPE6" 
51.
WSHNetwork.MapNetworkDrive "m:", "\\SERVERNAME\SHARE6",True 
52.
Case "GRUPPE7" 
53.
WSHNetwork.MapNetworkDrive "r:", "\\SERVERNAME\SHARE7",True 
54.
Case "GRUPPE8" 
55.
WSHNetwork.MapNetworkDrive "r:", "\\SERVERNAME\SHARE8",True 
56.
Case "REMOTEUSERS" 
57.
Set objNetwork = WScript.CreateObject("WScript.Network") 
58.
strLocalDrive = "O:" 
59.
strRemoteShare = "\\172.0.0.1\SHARE" 
60.
strPer = "FALSE" 
61.
strUsr = "BENUTZERNAME" 
62.
strPas = "PASSWORT" 
63.
objNetwork.MapNetworkDrive strLocalDrive, strRemoteShare, strPer, strUsr, strPas 
64.
End Select 
65.
 
66.
 
67.
 
68.
Next 
69.
 
70.
'Rename the Drives 
71.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#TRANSFERSHARE\_LabelFromReg" , "Transfer" , "REG_SZ" 
72.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAMEr#SHARE1\_LabelFromReg" , "Share XY" , "REG_SZ" 
73.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#SHARE2\_LabelFromReg" , "Share XY" , "REG_SZ" 
74.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#SHARE3\_LabelFromReg" , "Share XY" , "REG_SZ" 
75.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#SHARE4\_LabelFromReg" , "Share XY" , "REG_SZ" 
76.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#SHARE5\_LabelFromReg" , "Share XY" , "REG_SZ" 
77.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#SHARE6\_LabelFromReg" , "Share XY" , "REG_SZ" 
78.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#SHARE7\_LabelFromReg" , "Share XY" , "REG_SZ" 
79.
WshShell.RegWrite KEY_MountPoint & "##SERVERNAME#SHARE8\_LabelFromReg" , "Share XY" , "REG_SZ" 
80.
WshShell.RegWrite KEY_MountPoint & "##172.0.0.1#SHARE\_LabelFromReg" , "Remote Share" , "REG_SZ" 
81.
 
82.
 
83.
'===================================== 
84.
'Add On Code goes above this line 
85.
 
86.
'Clean Up Memory We Used 
87.
set UserObj = Nothing 
88.
set GroupObj = Nothing 
89.
set WSHNetwork = Nothing 
90.
set DomainString = Nothing 
91.
set WSHSHell = Nothing 
92.
Set WSHPrinters = Nothing 
93.
Set objNetwork = Nothing 
94.
Set objNetwork1 = Nothing 
95.
 
96.
'Quit the Script 
97.
wscript.quit 
98.
 
Ähnliche Inhalte
Viren und Trojaner

Kann Windows-Defender zuverlässig SMB-Shares scannen? Nö!

Information von DerWoWussteViren und Trojaner4 Kommentare

Ziemlich bittere Sache: Ein von Angreifern kontrollierter Fileserver kann den Windows-Defender ohne großen Aufwand "verarschen". Mal sehen, was daraus ...

Basic

Visual Basic Script (VBS): HTML-Tabelle generieren

Tipp von GurkenhobelBasic3 Kommentare

Für all jene, die schnell mal eine simple HTML-Tabelle benötigen, ist das folgende Skript gedacht. Der Name der fertigen ...

Neue Wissensbeiträge
iOS
Updates für Iphone und Co
Information von sabines vor 1 StundeiOS

Gestern abend ist iOS 11.3.1 erschienen, ein kleineres Update, dass einige Lücken schließt und "Lahmlegen" nach einem Display Tausch ...

Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 1 TagWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 1 TagSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 1 TagMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Heiß diskutierte Inhalte
C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++27 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux27 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless23 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL19 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...