Questione : Spostare i clienti disabili verso il OU di specific

Ciao, il

if ha trovato questo scritto dal chandru_sol. Dovrebbe entrare tutti gli utenti disabili di un dominio nella domanda voluta di OU.

My: quando il OU ha luogo all'interno di questo dominio, lo scritto copia l'utente disabile di questo OU in se?
class= > " libero " del
> " del codeSnippet " del class= del
class= " lineNumbers " del
class= del
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:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
objConnection notpretty del >Dim " del class= " " di codeSnippet797182 del id= del
; „ & strFilter & “; distinguishedName, userAccountControl; sotto-albero„  
 
objCommand.CommandText = strQuery  
 
objCommand.Properties (“formato di pagina„) = 100  
 
objCommand.Properties (“prespegnimento„) = 30  
 
objCommand.Properties (“il nascondiglio risulta„) = falso  
 
'Enumerare tutti gli utenti. Controllare se il cliente rendesse invalido.  
 
Regolare il objRecordSet = objCommand.Execute  
 
Fare fino a objRecordSet.EOF  
 
strDN = objRecordSet.Fields (“distinguishedName„)  
 
intFlag = objRecordSet.Fields (“userAccountControl„)  
 
Se (intFlag e ADS_UF_ACCOUNTDISABLE) <> 0 allora  

Regolare il objUser = GetObject (“LDAP: /„ & strDN)

Regolare il objNewOU = GetObject (“LDAP: Clienti di //ou=Disabled,„ & objRootDSE.Get (“defaultNamingContext„))
objNewOU.MoveHere objUser.ADsPath, vbNullString
 
Altrimenti  

Concluder se  
 
objRecordSet.MoveNext  
 
Ciclo  
 
'Pulire
objConnection.Close  
 
Wscript.Echo “fatti„
Wscript.quit
class= del

Risposta : Spostare i clienti disabili verso il OU di specific

Ciao là,

Ciò dovrebbe fare quella. Ho generato un allineamento denominato arrOUs che elenca soltanto i due OUs che avete cerchio ed ho modificato la parte che specifica il OU 03-DISABLED-USERS per abbinare la vostra struttura.

Sto supponendo che MWZ-FM.COM è lo stesso dominio corrente che il vostro calcolatore è sopra?  Se non e voi è su un dominio differente, allora uncomment questa linea:

'strDNSDomain = “DC=MWZ-FM, DC=COM„

dall'eliminazione dell'apostrofo alla parte anteriore ed allora dallo scritto indicherà specificamente quel dominio.

Riguardi,

Rob.
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:
objConnection fioco, objCommand, objRootDSE  
strDNSDomain fioco, strFilter, strQuery, objRecordSet, strDN 
strOUpath fioco, objNewOU, objUser
intFlag fioco  
Const ADS_UF_ACCOUNTDISABLE = &H02  
'Usare la DIFFICOLTÀ per cercare il dominio tutti gli utenti.  
Regolare il objConnection = CreateObject (“ADODB.Connection„)  
Regolare il objCommand = CreateObject (“ADODB.Command„)  
objConnection.Provider = “ADsDSOOBject„  
objConnection.Open “fornitore attivo dell'indice„  
Regolar objCommand.ActiveConnection = objConnection  
'Determinare il dominio di DNS dall'oggetto di RootDSE.  
Regolare il objRootDSE = GetObject (“LDAP: //RootDSE„)  
strDNSDomain = objRootDSE.Get (“DefaultNamingContext„)
'strDNSDomain = “DC=MWZ-FM, DC=COM„
strFilter = “(& (objectCategory=person) (objectClass=user))„  

'Ogni stringa deve avere un virgola di trascinamento
arrOUs = allineamento (_
	“OU=11-USERS,„, _
	“UTENTE MIGRIERT DI OU=12-EXCHANGE,„ _
	)

Per ogni strOU nei arrOUs
	strQuery = “; „ & strFilter & “; distinguishedName, userAccountControl; sotto-albero„  
	objCommand.CommandText = strQuery  
	objCommand.Properties (“formato di pagina„) = 100  
	objCommand.Properties (“prespegnimento„) = 30  
	objCommand.Properties (“il nascondiglio risulta„) = falso  
	'Enumerare tutti gli utenti. Controllare se il cliente rendesse invalido.  
	Regolare il objRecordSet = objCommand.Execute
	Fare fino a objRecordSet.EOF  
		strDN = objRecordSet.Fields (“distinguishedName„)  
		intFlag = objRecordSet.Fields (“userAccountControl„)  
		Se (intFlag e ADS_UF_ACCOUNTDISABLE) <> 0 allora 
			Regolare il objUser = GetObject (“LDAP: /„ & strDN)
			Regolare il objNewOU = GetObject (“LDAP: //OU=03-DISABLED-USERS, OU=93-DISABLED-OBJECTS,„ & strDNSDomain)
			objNewOU.MoveHere objUser.ADsPath, vbNullString
		Concluder se  
		objRecordSet.MoveNext  
	Ciclo  
Dopo
'Pulire
objConnection.Close  
Wscript.Echo “fatti„
Wscript.quit
Altre soluzioni  
 
programming4us programming4us