搜索

2014-10-10 43 views
0

我有一个像下面搜索

pnc.com - root domain europe.pnc.com - Child domain asia.pnc.com - Child domain americas.pnc.com - Child domain

我想编写一个VB脚本,可以搜索整个目录林中的用户,并显示我的位置在我们的活动目录的多个域用户对象。

我曾尝试过像这样搜索,但我不得不给出确切的域名。

请帮

回答

0

您需要启用referral chasing下级域:

Set rootDSE = GetObject("LDAP://RootDSE") 

base = "<LDAP://" & rootDSE.Get("defaultNamingContext") & ">" 
filter = "(&(objectClass=user)(objectCategory=Person))" 
attr = "distinguishedName" 
scope = "subtree" 

Set conn = CreateObject("ADODB.Connection") 
conn.Provider = "ADsDSOObject" 
conn.Open "Active Directory Provider" 

Set cmd = CreateObject("ADODB.Command") 
Set cmd.ActiveConnection = conn 
cmd.Properties("Chase referrals") = &h20 
cmd.CommandText = base & ";" & filter & ";" & attr & ";" & scope 

Set rs = cmd.Execute 
...

早在我写了一个wrapper class for AD queries,默认情况下启用此一天:

'add/import class here 

Set qry = New ADQuery 
qry.Filter  = "..." 
qry.Attributes = Array("sAMAccountName", ...) 

Set rs = qry.Execute 
...