CERTIFICADO:
'**************************************************************************************
'Criou: 04/08/2002
'Autor: Yi Helen Wang
'Finalidade: Procurarando usuários através de um diretório ativo (AD) de
' Windows 2000 a segurar de encontro à duplicação quando
' um usuário novo é adicionado no ANÚNCIO
'Palavras-chaves: A DEMORA e ADSI 2.5 ou levantam
'Reviu: 05/13/2002
'Comentário: Você tem que atribuir uma permissão começ o diretório ativo
' informação. Este programa é funcionado localmente ou remotamente
'***************************************************************************************
no resumo do erro em seguida
oContainer não ofuscante, searchpath
oRoot não ofuscante
oConnect não ofuscante, oCommand, rs
strConnect não ofuscante, strDomainCtrl, strOU
cntuser não ofuscante, newuser, strCN, strSearchUser
newuser = falso
cntuser = 0
'para começ o namespace de LDAP
ajustar o oRoot = o GetObject (“LDAP: //RootDSE ")
chamada ShowError (da “edições permissão! ")
strDomainCtrl = oRoot.Get (“defaultNamingContext”)
strOU = InputBox (“por favor entrada um nome da unidade da organização a procurarar: ”, “procurarando”, “legal”)
se Len (guarnição (strOU)) = 0 então
msgbox “que nenhuma informação datilografou dentro!”
mais
strConnect = “LDAP: //OU=” & strOU &”, “& strDomainCtrl
ajustar o oContainer = o GetObject (o strConnect)
chamar ShowError (“OUNameNotExist”)
searchpath = oContainer.ADsPath
strSearchUser = InputBox (“por favor a entrada o usuário procurarou a inicial: ”, “pesquisa”, “sls”)
se Len (guarnição (strSearchUser))=0 então
msgbox “que nenhuma informação datilografou dentro!”
mais
'Using a DEMORA para perguntar o diretório ativo para um usuário do particule
ajustar o oConnect = o CreateObject (“ADODB.Connection”)
ajustar o oCommand = o CreateObject (“ADODB.Command”)
chamar ShowError (“ADOProblems”)
'abrindo a conexão
oConnect.Provider = “ADsDSOObject”
oConnect.Open “fornecedor ativo do diretório”
chamada ShowError (“ADOProvider”)
'criando um objeto do comando para esta conexão
Ajustar oCommand.ActiveConnection = oConnect
strCN = strSearchUser
FAZER QUANDO newuser <> verdadeiro
oCommand.CommandText = “samAccountName SELETO DE “” & searchpath & “” ONDE objectClass='user E samAccountName = ““& strSearchUser &”” “
'criando um recordset baseado no comando da DEMORA
ajustar rs = oCommand.Execute
'Navegar grava o jogo
se rs.EOF e rs.BOF então
msgbox “usuário novo”
o newuser = retifica
mais
cntuser = cntuser + 1
'rebatizar e verific outra vez até nenhuma duplicação
o strSearchUser = saiu (strCN, 1) & direito (strCN, 1) & cntuser
o msgbox “rebatiza a NC como” & o strSearchUser
ajustar rs = nada
terminar se
LAÇO
terminar se
terminar se
sub ShowError (o strErr)
se erram <> 0 então
se erram = 432 ou err=70 então
wscript.echo “permissão emite para funcionar o programa”
wscript.quit
mais
selecionar o strErr do caso
encaixotar “OUNameNotExist”
wscript.echo da “nome OU não está correto ou para não existir!”
wscript.quit
caso “ADOProblems”
wscript.echo da “problemas DEMORA!”
wscript.quit
caso “ADOProvider”
wscript.echo da “problemas do fornecedor DEMORA!”
wscript.quit
extremidade seleta
terminar se
terminar se
terminar o submarino
|