Тусклое objConnection, objCommand, objRootDSE
Тусклое strDNSDomain, strFilter, strQuery, objRecordSet, strDN
Тусклое strOUpath, objNewOU, objUser
Тусклое intFlag
Const ADS_UF_ACCOUNTDISABLE = &H02
'Используйте СУЕТУ для того чтобы искать домен для всех потребителей.
Установите objConnection = CreateObject («ADODB.Connection»)
Установите objCommand = CreateObject («ADODB.Command»)
objConnection.Provider = «ADsDSOOBject»
objConnection.Open «активно провайдер директории»
Установите objCommand.ActiveConnection = objConnection
'Обусловьте домен DNS от предмета RootDSE.
Установите objRootDSE = GetObject («LDAP: //RootDSE»)
strDNSDomain = objRootDSE.Get («DefaultNamingContext»)
'strDNSDomain = «DC=MWZ-FM, DC=COM»
strFilter = «(& (objectCategory=person) (objectClass=user))»
'Каждый шнур должен иметь отставая запятой
arrOUs = блок (_
«OU=11-USERS,», _
«ПОТРЕБИТЕЛЬ MIGRIERT OU=12-EXCHANGE,» _
)
Для каждого strOU в arrOUs
strQuery = «; » & strFilter & «; distinguishedName, userAccountControl; поддерево»
objCommand.CommandText = strQuery
objCommand.Properties («размер страницы») = 100
objCommand.Properties («перерыв») = 30
objCommand.Properties («тайник приводит к») = ложно
'Перечислите всех потребителей. Проверите если учет вывел из строя.
Установите objRecordSet = objCommand.Execute
Не сделать до objRecordSet.EOF
strDN = objRecordSet.Fields («distinguishedName»)
intFlag = objRecordSet.Fields («userAccountControl»)
Если (intFlag и ADS_UF_ACCOUNTDISABLE) <> 0 после этого
Установите objUser = GetObject («LDAP: /» & strDN)
Установите objNewOU = GetObject («LDAP: //OU=03-DISABLED-USERS, OU=93-DISABLED-OBJECTS,» & strDNSDomain)
objNewOU.MoveHere objUser.ADsPath, vbNullString
Закончитесь если
objRecordSet.MoveNext
Петля
Затем
'Очистьте вверх
objConnection.Close
«Сделанные» Wscript.Echo
Wscript.quit
|