Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hallo,

@ Mods : ik weet niet of ik het probleem op de juiste plek neerzet, mocht dit niet het geval zijn, plz verplaats het even.

Ik ben bezig met scripting om gebruikers toe te voegen aan de AD, zodat er niet een hele rits handelingen verricht hoeft te worden om een gebruiker werkend te maken.
het probleem kent de volgende indeling van de AD.
-DOMAIN.NL
-Test (OU)
-Computers(OU)
-Groups(OU)
-Users(OU)

Nu wil ik een gebruiker aanmaken in de users(OU), en direct daarna toe laten voegen aan de groep G Testgroep, welke in Groups(OU) staat.
Echter heb ik het probleem dat ik deze error krijg. Weet iemand hoe ik dit af kan vangen ?
Het zit in dit stukje code :
VBScript:
1
2
3
4
5
6
7
8
9
10
11
12
'40. Gebruiker toevoegen aan groep
'========================================================
'42. Binding met AD opzetten
Set objRoot  = GetObject("LDAP://rootDSE")
strDnsDomain = objRoot.Get("defaultNamingContext")

'46. gebruiker toevoegen
Set objUser = GetObject("LDAP://CN="& strUser _
& strOU & strDnsDomain)
Set objGroup = GetObject("LDAP://CN="& strGroup _
& strGOU & strDnsDomain)
objGroup.add(objUser.ADsPath)

Source :
VBScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
'1. Variabelen declareren
Option Explicit
Dim strUser, strOU, strGOU, strPassword, strFirstname, strLastname, strLoginname, strDomain, strGroup, strTextgroup, strDnsDomain
Dim objRoot, objContainer, objUser, objGroup, objShell, objMMC, objGOU, objOU

strOU = "OU=Users,OU= Test,"
strGOU = "OU=Groups,OU= Test,"
strUser = "Testuser"
strGroup = "G Testgroep,"
strLoginname = "Testuser"
strFirstname = "Test"
strLastname = "User"
strDomain = "@DOMAIN.NL"
strPassword ="12345678"

'16. Gebruiker creeren
'========================================================
'18. Verbinden met Active Directory
Set objRoot = GetObject("LDAP://rootDSE")
Set objContainer = GetObject("LDAP://" & strOU &_
objRoot.Get("defaultNamingContext"))

'23. Voorbereiden Gebruiker aanmaken
Set objUser = objContainer.Create("User","cn="& strUser)

objUser.sAMAccountName = strUser
objUser.userPrincipalName = strLoginname & strDomain
objUser.GivenName = strFirstname
objUser.SN = strLastname
objUser.displayName = strFirstname & " " & strLastname
objUser.scriptPath = "login.bat"
objUser.SetInfo

'34. Wachtwoordinstellingen & account actief maken
objUser.SetPassword strPassword
objUser.userAccountControl = "512"
objUser.PwdLastSet = "0"
objUser.SetInfo

'40. Gebruiker toevoegen aan groep
'========================================================
'42. Binding met AD opzetten
Set objRoot  = GetObject("LDAP://rootDSE")
strDnsDomain = objRoot.Get("defaultNamingContext")

'46. gebruiker toevoegen
Set objUser = GetObject("LDAP://CN="& strUser _
& strOU & strDnsDomain)
Set objGroup = GetObject("LDAP://CN="& strGroup _
& strGOU & strDnsDomain)
objGroup.add(objUser.ADsPath)


Wscript.Echo "Gelukt"
Wscript.quit

[ Voor 8% gewijzigd door Verwijderd op 22-07-2009 09:06 . Reden: quotes ]


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Als je code post, gebruik dan code tags; daarbij zien we graag wat (en hoe en of en ...) je al gedebugged hebt (Debuggen: Hoe doe ik dat?) en waar je denkt dat het fout gaat. En heb je überhaupt al eens gezocht op de foutmelding/foutcode? Neem ook even onze Quickstart door; daar vindt je hetgeen ik zojuist beschrijf in terug en daarmee voorkom je (voor een volgende keer) dat we dat soort info uit je moeten trekken terwijl je die gewoon in je TS kunt (en hoort) op (te) nemen ;)

[ Voor 32% gewijzigd door RobIII op 20-07-2009 17:19 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 05:23
Ik vermoed dat je topic beter in WSS geplaatst had kunnen worden (zie ook het WSS beleid over welke topics daar thuishoren).

Kun je ondertussen even [code=vbscript][/code] tags om je code heenzetten? Dat leest wel zo makkelijk. Kun je verder aangeven bij welke statement je de genoemde foutmelding precies krijgt?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
@roblll,

zou je dit topic maybe kunnen verplaatsen zodat het in het WSS forum komt te staan?

Verder heb ik alles bijgewerkt. Excuses daarvoor :)

Ik had al op google gezocht naar de foutmelding. Echter komt hier uit dat de meeste fouten die dit veroorzaken exceptionele fouten zijn.
De fout begint bij regel 47.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
PRG >> WSS
Your wish is my command Afbeeldingslocatie: http://tweakers.net/ext/f/7Ao14s8ajxFfLbewHjTE4eXV/full.gif

[ Voor 69% gewijzigd door RobIII op 22-07-2009 09:25 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Hoeloeloe
  • Registratie: December 2007
  • Laatst online: 15-09 17:28
Nou weet ik niks van active directories maar in de regel waar de fout zit krijg je de volgende string:
code:
1
2
3
"LDAP://CN="& strUser & strOU & strDnsDomain
wordt
"LDAP://CN=TestuserOU=User,OU= Test," & strDnsDomain


Voor zover ik kan vinden (en wat me logisch lijkt) moet strUser dan nog gevolgd worden door een komma. Of de Dnsdomain er correct achter komt weet ik niet, debug ff om te kijken wat deze string wordt.

Acties:
  • 0 Henk 'm!

  • Krypt
  • Registratie: April 2000
  • Laatst online: 27-08 13:55
Verder zit er ook een spatie voor de "Test" OU; daar gaat ie ook de mist in denk ik.

Pvouput live


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Yep,

het was de komma. Helemaal overheen gekeken.
Nu nog ff exchange erinbakken, en nog even een menu eromheen.. dan issie klaar :)

Acties:
  • 0 Henk 'm!

  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

tip voor de volgende keer:
Duw er vóórdat je iets echt gaat committen even een MsgBox tussen waarin je je geconstrueerde waarde kan aflezen :)

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
haha, ga ik zeker ff doen.

Dit is ook mijn eerste dingetje in VBS, dus ben nog een beetje alles aan het uitvinden ;)
Pagina: 1