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, 7664 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
Internet

Europa baut Zensurinfrastruktur auf: EU-Parlament stimmt für Upload-Filter, Leistungsschutzrecht und gegen KI-Forschung

Information von Frank vor 2 TagenInternet9 Kommentare

Eine sehr schlechte Entscheidungen für die Zukunft Europas ist gefallen: Der Rechtsausschuss im EU-Parlament stimmte heute morgen in einer ...

Windows 10

Mikrofon von Headset geht nach Update auf Windows 10 1803 nicht mehr

Tipp von Deepsys vor 4 TagenWindows 102 Kommentare

Ich verwende ein Plantronics Headset das per USB mit dem Windows 10 PC verbunden ist. Damit kann ich auch ...

Video & Streaming

Ruckelfreies Fernsehen auf Smartphone oder Tablet - in SD oder gar HD - Eine Alternative zum Fritz DVB-C Receiver

Anleitung von power-user vor 5 TagenVideo & Streaming9 Kommentare

Wer kennt das nicht: Man möchte gemütlich auf dem Balkon sitzen und vielleicht grillen und dabei das WM-Spiel gucken ...

Erkennung und -Abwehr
Trendmicro WFBS 10 ist in deutsch verfügbar!
Tipp von VGem-e vor 5 TagenErkennung und -Abwehr4 Kommentare

Servus Kollegen, downloadbar unter

Heiß diskutierte Inhalte
LAN, WAN, Wireless
WLAN-Übersicht wie FritzWLAN jedoch für PC gesucht
gelöst Frage von HenereLAN, WAN, Wireless16 Kommentare

Servus, ich suche für einen Windows PC eine Anwendung die so ähnlich wie die FritzWLAN App auf dem Smartphone ...

Netzwerke
Netzwerkkommunikation von Windows 10 aus Freigabe mit Windows XP funktioniert nicht
gelöst Frage von KLinnebankNetzwerke14 Kommentare

Hallo werte Gemeinde, ja, es ist Freitag. Aber das ist KEINE Freitagsfrage Ich habe ein für mich völlig wirres ...

Festplatten, SSD, Raid
Server Architektur mit RAID 5 - wozu interne Platten?
Frage von Pierre78Festplatten, SSD, Raid10 Kommentare

Hallo, ich beschäftige mich gerade mit RAID Systemen. Ich habe mir einen gebrauchten Dell PowerEdge R515 gekauft. Dieser hat ...

Samba
Netzlaufwerk über VPN hat Probleme
Frage von geocastSamba8 Kommentare

Hallo Zusammen Ich habe hier ein QNAP TS-269 Pro (aktuellste Firmware) NAS in einem entfernten Standort, der über VPN ...