Pergunta : Eu preciso de perguntar cada grupo em uma OU no domínio da raiz e de começ os nomes de grupo que tem usuários idênticos exatos.

Olá!, necessidade do

I de perguntar cada grupo em uma OU no domínio da raiz e começ os nomes de grupo que tem o as

Group1 da saída de users.
get tem 10 membros e eles são o identical
Group2 têm 10 membros e é o identical

Need para verific o membro a identificação do email que poderia ser clientes ou contatos de usuário no groups

Regards
Sharath
class= do

Resposta : Eu preciso de perguntar cada grupo em uma OU no domínio da raiz e de começ os nomes de grupo que tem usuários idênticos exatos.

verific este código:
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:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
Ajustar o oObject = o GetObject (“LDAP: //ad2008rd/cn=Users, DC=soap, DC=com”)
disposição de oObject.Filter= (“grupo”)

arrGroups de ReDim (1)
arrGroupMembers de ReDim (1)
oGroup não ofuscante, nome de arquivo, groupName, arrGroupMembersCounter, emptyGroupsCounter, groupsCounter

arrGroupMembersCounter=0
emptyGroupsCounter=0
groupsCounter=0

Para cada oGroup no oObject
	membros não ofuscantes
	members=0
	
	groupName = oGroup.cn
	
	arrGroups da conserva de ReDim (groupsCounter+1)

	groupPath = getgrouppath (groupName)

	se groupPath = "" então
		wscript.echo “incapaz de encontrar o grupo especific no domínio”
	mais
		ajustar o objGroup = o getobject (o grouppath)
	
		para cada objMember em objGroup.Members
			members=members+1
			se arrGroupMembers (arrGroupMembersCounter) = "" então
				arrGroupMembers (arrGroupMembersCounter) = objmember.samaccountname
			mais
				arrGroupMembers (arrGroupMembersCounter) = arrGroupMembers (arrGroupMembersCounter) & “,” & objmember.samaccountname
			terminar se 			
		em seguida

		groupname dos getprimarygroupmembers

		groupName de wscript.echo & “: ” 
		se arrGroupMembers (arrGroupMembersCounter) = "" então
			emptyGroupsCounter=emptyGroupsCounter+1
			wscript.echo “GRUPO VAZIO…”
		mais
			=groupName dos arrGroups (groupsCounter)
			groupsCounter=groupsCounter+1

			número de wscript.echo “de membros: ” & membros
			arrGroupMembers de wscript.echo (arrGroupMembersCounter)
			arrGroupMembersCounter=arrGroupMembersCounter+1
			arrGroupMembers da conserva de ReDim (arrGroupMembersCounter+1)
		terminar se
				
		"" de wscript.echo
		terminar se
Em seguida

número de wscript.echo “de grupos: ” & groupsCounter
número de wscript.echo “de grupos vazios: ” & emptyGroupsCounter

findDuplicateGroups ()

wscript.echo “terminou”
		
findDuplicateGroups da função ()
	"" de wscript.echo
	membros duplicados dos grupos achado de wscript.echo do “: ”

	para i = 0 ao ubound (arrGroups)
		para j = 0 ao ubound (arrGroups)
			se ij<> então
				se arrGroupMembers (i) = arrGroupMembers (j) então
					arrGroups de wscript.echo (i) & “e” & arrGroups (j) & “tem os mesmos membros: ”
					arrGroupMembers de wscript.echo (j) 
					"" de wscript.echo
				terminar se
			terminar se
		em seguida
	em seguida 
função do fim

getGroupPath da função (GroupName byval)
	ajustar o cmd=createobject (“ADODB.Command”)
	ajustar o cn=createobject (“ADODB.Connection”)
	ajustar o rs=createobject (“ADODB.Recordset”)
	
	cn.open “Provider=ADsDSOObject; ”
	
	mandtext de cmd.com = “adspath SELETO 'de LDAP: /” & getnc & _
			  ““ONDE objectCategory = “grupo” e sAMAccountName =” “& groupname &” '“
	cmd.activeconnection = NC
	
	ajustar rs = cmd.execute
	
	se rs.bof <> retificam e rs.eoftrue<> então
		getgrouppath=rs (0)
	mais
		getgrouppath = ""
	terminar se
	cn.close

terminar a função

getNC da função
	ajustar o objRoot=getobject (“LDAP: //RootDSE”)
	getNC=objRoot.get (“defaultNamingContext”)
função do fim

getPrimaryGroupMembers da função (GroupName byval)
	ajustar NC = createobject (“ADODB.Connection”)
	ajustar o cmd = o createobject (“ADODB.Command”)
	ajustar os rs = o createobject (“ADODB.Recordset”)
	
	cn.open “Provider=ADsDSOObject; ”
	cmd.activeconnection=cn

	cmd.properties (de “tamanho página”) =1000
	mandtext de cmd.com = “PrimaryGroupToken SELETO 'DE LDAP: /” & getnc & _
			  ““ONDE sAMAccountName =” “& GroupName &” '“
	ajustar rs = cmd.execute

	se rs.eoftrue<> e rs.boftrue<> então
		PrimaryGroupID = rs (0)
	mais
		Err.Raise 5000, “getPrimaryGroupMembers”, “incapaz de encontrar a propriedade de PrimaryGroupToken”
	terminar se

	mandtext de cmd.com = “samaccountname SELETO, sn, givenName 'DE LDAP: /” & getNC & _
			  ““ONDE PrimaryGroupID =” “& PrimaryGroupID &” '“

	ajustar rs = cmd.execute

	quando rs.eoftrue<> e rs.boftrue<>
		se arrGroupMembers (arrGroupMembersCounter) = "" então
			arrGroupMembers (arrGroupMembersCounter) = rs (“samaccountname”)
		mais
			arrGroupMembers (arrGroupMembersCounter) = arrGroupMembers (arrGroupMembersCounter) & “,” & rs (“samaccountname”)
		terminar se 	
			
		rs.movenext
	wend
	cn.close
	
terminar a função
Outras soluções  
 
programming4us programming4us