Schemerige objConnection, objCommand, objRootDSE
Schemerige strDNSDomain, strFilter, strQuery, objRecordSet, strDN
Schemerige strOUpath, objNewOU, objUser
Schemerige intFlag
Const ADS_UF_ACCOUNTDISABLE = &H02
De 'DRUKTE van het gebruik om het domein naar alle gebruikers te zoeken.
Vastgestelde objConnection = CreateObject („ADODB.Connection“)
Reeks objCommand = CreateObject („ADODB.Command“)
objConnection.Provider = „ADsDSOOBject“
objConnection.Open de „Actieve Leverancier van de Folder“
Vastgesteld objCommand.ActiveConnection = objConnection
'Bepaal het DNS domein van het voorwerp RootDSE.
Plaats objRootDSE = GetObject („LDAP: //RootDSE“)
strDNSDomain = objRootDSE.Get („DefaultNamingContext“)
'strDNSDomain = „DC=MWZ-FM, DC=COM“
strFilter = „(& (objectCategory=person) (objectClass=user))“
'Elk koord moet een slepende komma hebben
arrOUs = Serie (_
„OU=11-USERS,“, _
„OU=12-EXCHANGE GEBRUIKER MIGRIERT,“ _
)
Voor Elke strOU in arrOUs
strQuery = „; “ & strFilter & „; distinguishedName, userAccountControl; onderverdeling“
objCommand.CommandText = strQuery
objCommand.Properties (de „Grootte van de Pagina“) = 100
objCommand.Properties („Onderbreking“) = 30
objCommand.Properties (de „Resultaten van het Geheime voorgeheugen“) = Vals
'Som alle gebruikers op. Controleer als rekeningsgehandicapten.
Plaats objRecordSet = objCommand.Execute
Doe tot objRecordSet.EOF
strDN = objRecordSet.Fields („distinguishedName“)
intFlag = objRecordSet.Fields („userAccountControl“)
Als (intFlag en ADS_UF_ACCOUNTDISABLE) <> 0 toen
Reeks objUser = GetObject („LDAP: /“ & strDN)
Reeks objNewOU = GetObject („LDAP: //OU=03-DISABLED-USERS, OU=93-DISABLED-OBJECTS,“ & strDNSDomain)
objNewOU.MoveHere objUser.ADsPath, het vbNullString
Eind als
objRecordSet.MoveNext
Lijn
Daarna
'Maak schoon
objConnection.Close
Wscript.Echo „Gedaan“
Wscript.quit
|