Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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
GELÖST

VBS Problem mit wshShell

Frage Entwicklung VB for Applications

Mitglied: skid

skid (Level 1) - Jetzt verbinden

06.04.2011 um 08:49 Uhr, 4002 Aufrufe, 2 Kommentare

Hallo,

nachdem ich nun einige Stunden damit verbracht und keine Lösung gefunden habe, hoffe ich das Ihr mir weiterhelfen könnt.

Ich habe ein .vbs-Skript in dem ich mit DSMOD den Client, auf dem das Skript ausgeführt wird, in eine Gruppe im AD hinzufügen möchte.
Das Skript sieht so aus:

01.
 
02.
Const ADS_NAME_INITTYPE_GC = 3 
03.
Const ADS_NAME_TYPE_NT4 = 3 
04.
Const ADS_NAME_TYPE_1779 = 1 
05.
 
06.
Dim wshShell 
07.
Dim WScript 
08.
 
09.
Set wshShell = CreateObject("WScript.Shell") 
10.
 
11.
'Get the NETBIOS name of the domain 
12.
Set objSystemInfo = CreateObject("ADSystemInfo")  
13.
strDomain = objSystemInfo.DomainShortName 
14.
 
15.
' Get the name of the computer 
16.
set objNetwork = createobject("Wscript.Network") 
17.
strComputer = objNetwork.ComputerName 
18.
 
19.
' Call function to return the distinguished name (DN) of the computer 
20.
strComputerDN = getComputerDN(strComputer,strDomain) 
21.
 
22.
wshShell.Run "dsmod Group " & "CN=TESTGRUPPE,OU=Test,DC=xx,DC=yy,DC=zz" & " -addmbr " & strComputerDN , 0, True 
23.
 
24.
function getComputerDN(byval strComputer,byval strDomain) 
25.
	' Function to get the distinguished name of a computer 
26.
	' from the NETBIOS name of the computer (strcomputer) 
27.
	' and the NETBIOS name of the domain (strDomain) using 
28.
	' name translate 
29.
 
30.
	Set objTrans = CreateObject("NameTranslate") 
31.
	' Initialize name translate using global catalog 
32.
	objTrans.Init ADS_NAME_INITTYPE_GC, "" 
33.
	' Input computer name (NT Format) 
34.
	objTrans.Set ADS_NAME_TYPE_NT4, strDomain & "\" & strComputer & "$" 
35.
	' Get Distinguished Name. 
36.
	getComputerDN = objTrans.Get(ADS_NAME_TYPE_1779) 
37.
 
38.
End Function 
39.
 
Irgendwie wird der dsmod-Befehl nicht ausgeführt. Wenn ich es in eine Dos-Box eintippe funktioniert alles.
Die strComputerDN-Variable wird auch richtig befüllt - das habe ich mir schon über eine MsgBox anzeigen lassen.
Ich habe noch ein weiteres Skript in dem ich auch mit dsmod was mache und da funktioniert der wshShell-Aufruf.
Warum es bei dem einen funktioniert und beim anderen nicht kann ich mir nicht erklären, da der Aufruf der gleiche ist.

Vielleicht habt Ihr noch eine Idee.....?!

SKID
Mitglied: AndreasHoster
06.04.2011 um 16:08 Uhr
Ja.
Zuallererst, zum Testen, nicht einfach schauen ob die strComputerDN richtig gefüllt ist, sondern sich den kompletten Befehlsstring ausgeben lassen.
Also
01.
msgbox "dsmod Group " & "CN=TESTGRUPPE,OU=Test,DC=xx,DC=yy,DC=zz" & " -addmbr " & strComputerDN 
Dann würde nämlich auffallen, daß Anführungszeichen fehlen.
Laut MS soll es dsmod Group "CN=TESTGRUPPE,OU=Test,DC=xx,DC=yy,DC=zz" ... heißen, bei Dir heißt es dsmod Group CN=TESTGRUPPE,OU=Test,DC=xx,DC=yy,DC=zz
Also mal folgendes ausprobieren:
01.
wshShell.Run "dsmod Group ""CN=TESTGRUPPE,OU=Test,DC=xx,DC=yy,DC=zz"" -addmbr """ & strComputerDN & """" , 0, True 
Bitte warten ..
Mitglied: skid
07.04.2011 um 08:53 Uhr
Danke für den Tip !

nachdem ich es jetzt die Anführungszeichen richtig gesetzt habe funktioniert es !!

01.
 
02.
WshShell.Run  "dsmod Group " & """CN=TESTGRUPPE,OU=Test,DC=xx,DC=yy,DC=zz""" & " -addmbr """ & strComputerDN & """" , 0, True 
03.
 
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Exchange Server
gelöst Exchange 2013 Outlook 2013 Autodiscover Mailbox Problem (GUID) (4)

Frage von Systembastler zum Thema Exchange Server ...

SAN, NAS, DAS
gelöst Synolgy 1815+ - Rechte- und Richtlinien-Problem User-Ordner Home (3)

Frage von Nintox zum Thema SAN, NAS, DAS ...

Peripheriegeräte
Roccat Ryos - Support verzweifelt an Problem mit Profilen

Frage von sascha382 zum Thema Peripheriegeräte ...

Windows Update
gelöst Windows Server 2012 R2 - WSUS Problem (1)

Frage von aladin.inder zum Thema Windows Update ...

Heiß diskutierte Inhalte
Linux Netzwerk
gelöst DHCP vergibt keine Adressen (32)

Frage von Maik82 zum Thema Linux Netzwerk ...

Apache Server
gelöst Lets Encrypt SSL mit Apache2 (20)

Frage von banane31 zum Thema Apache Server ...

CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (20)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Mac OS X
Mac kann nicht im LAN pingen alle anderen schon (14)

Frage von smartino zum Thema Mac OS X ...