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

Benutzer via VB-Script anlegen

Frage Entwicklung VB for Applications

Mitglied: whatzzup

whatzzup (Level 1) - Jetzt verbinden

07.03.2013, aktualisiert 10:15 Uhr, 1623 Aufrufe, 9 Kommentare

Hallo Zusammen,

ich habe ein VB-Script zum anlegen von Benutzer in einer AD. Jetzt wollte ich noch die Möglichkeit einbauen, nach anlegen des Benutzer, auswählen zu können in welche OU dieser verschoben werden soll.

01.
strOU = InputBox("in welche OU soll der Nutzer " & Trim(details(0)) & " angelegt werden?") 
02.
 
03.
  Set objOU = GetObject("LDAP://cn=Users,dc=schulnetz,dc=local") 
04.
  objOU.MoveHere _ 
05.
        "LDAP://ou=" & strOU & ",ou=Schule,dc=schulnetz,dc=local",vbNullString 
06.
 
Mein Problem ist jetzt nun das ich die Fehlermeldung bekomme "Zugriff verweigert" mit der Zeilenangabe 74 (objOU.MoveHere _ ...). Ich bin als Admin auf dem DC (in einer VM).

Ich danke schon mal im Voraus für jede Hilfe.

Gruß

Mitglied: B4DschK4Pp
07.03.2013 um 10:47 Uhr
Hi,

01.
strOU = InputBox("in welche OU soll der Nutzer " & Trim(details(0)) & " angelegt werden?") 
02.
 
03.
  Set objOU = GetObject("LDAP://cn=Users,dc=schulnetz,dc=local") 
04.
  objOU.MoveHere("LDAP://ou=" & strOU & ",ou=Schule,dc=schulnetz,dc=local",vbNullString)
Geht das?

Gruß
B4DschK4Pp
Bitte warten ..
Mitglied: whatzzup
07.03.2013 um 11:03 Uhr
Ne dann kommt "Beim Aufrufen einer Unterroutine (Sub) dürfen keine Klammern verwendet werden"
Bitte warten ..
Mitglied: B4DschK4Pp
07.03.2013 um 13:37 Uhr
Puh, ok. Also hier:
Habe eine Funktion gebaut, die du noch einbauen kannst.

01.
Sub moveToOU(OUName, Username) 
02.
 On Error Resume Next 
03.
 
04.
 Const ADS_SCOPE_SUBTREE = 2 
05.
 
06.
 Set objOU = GetObject("LDAP://OU=" & OUName & ",OU=Schule,dc=schulnetz,dc=local") 
07.
 
08.
 Set objConnection = CreateObject("ADODB.Connection") 
09.
 Set objCommand =   CreateObject("ADODB.Command") 
10.
 objConnection.Provider = "ADsDSOObject" 
11.
 objConnection.Open "Active Directory Provider" 
12.
 Set objCommand.ActiveConnection = objConnection 
13.
 
14.
 objCommand.Properties("Page Size") = 1000 
15.
 objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE 
16.
 
17.
 objCommand.CommandText = _ 
18.
     "SELECT ADsPath FROM 'LDAP://dc=schulnetz,dc=local' WHERE objectCategory='user' " & _ 
19.
         "AND Name='" & Username & "'" 
20.
 Set objRecordSet = objCommand.Execute 
21.
 
22.
 objRecordSet.MoveFirst 
23.
 
24.
 Do Until objRecordSet.EOF 
25.
     strADsPath = objRecordSet.Fields("ADsPath").Value 
26.
     objOU.MoveHere strADsPath, vbNullString 
27.
     objRecordSet.MoveNext 
28.
 Loop 
29.
End Sub
Der Funktion musst du also nur noch die ZielOU mitgeben, sowie den User, der verschoben werden soll.
Also meinetwegen:
01.
strOU = InputBox("in welche OU soll der Nutzer " & Trim(details(0)) & " angelegt werden?")  
02.
moveToOU strOU, Trim(Details(0))
Gruß
B4DschK4Pp
Bitte warten ..
Mitglied: whatzzup
07.03.2013, aktualisiert um 14:41 Uhr
Wow danke erstmal das du dir die Zeit genommen hast. Ich bekomme nur die Fehlermelung für ein Syntaxfehler bei " Sub moveToOU(OUName, Username)
Bitte warten ..
Mitglied: B4DschK4Pp
07.03.2013 um 15:03 Uhr
Kann ich nicht nachvollziehen. Es funktioniert einwandfrei bei mir.
Bitte warten ..
Mitglied: whatzzup
07.03.2013 um 15:26 Uhr
ich verstehe gerade auch nicht wieso es nicht klappt denn jetzt funktioniert meine alte Subfunktion auch nicht. Die hatte die Konten zu Gruppen hinzugefügt
Bitte warten ..
Mitglied: whatzzup
07.03.2013 um 15:32 Uhr
ääähm ich habe gerade eine Kopie des funktionierenden Scripts gemacht und dein Code eingefügt jetzt funktioniert es ...

wieder mal vielen vielen dank
Bitte warten ..
Mitglied: B4DschK4Pp
07.03.2013 um 15:50 Uhr
Als gelöst markieren nicht vergessen ;)
Bitte warten ..
Mitglied: whatzzup
07.03.2013 um 15:56 Uhr
Jop die nächste Frage wird aber wahrscheinlich nicht lang auf sich warten lassen
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Outlook & Mail
gelöst Email Anhänge speichern VB Script aber nur bestimmte Dateitypen (Outlook) (4)

Frage von LindeUnimog zum Thema Outlook & Mail ...

VB for Applications
gelöst VB Script rekursiv statt nur ein Ordner (4)

Frage von Saschaaaaa zum Thema VB for Applications ...

VB for Applications
gelöst VB Script nach gefundenem Wort die nächsten 4 Zeichen ersetzten (2)

Frage von deutsch73 zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (18)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

Grafikkarten & Monitore
Neue Graifkkarte - kein Bild (10)

Frage von bestelitt zum Thema Grafikkarten & Monitore ...

Exchange Server
gelöst Exchange 2013 - Kontakte aus CSV importieren (9)

Frage von hesper zum Thema Exchange Server ...

Multimedia & Zubehör
gelöst Iphone 6 prob (8)

Frage von jensgebken zum Thema Multimedia & Zubehör ...