vbscript: benutzerdefinierte LDAP-filtern von Abfragen mit der Suche für alle Computer in der Domäne, aber ohne eine OU oder 2

Wenn ich laufen:

Set objConnection = CreateObject("ADODB.Connection")
Set objCommand =   CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"

strFilter = "(&(objectClass=computer))"

strAttributes = "name,distinguishedName"

strQuery = strDomainDN & ";" & strFilter & ";" & strAttributes & ";subtree"

Set objCOmmand.ActiveConnection = objConnection
objCommand.CommandText = strQuery
objCommand.Properties("Page Size") = 9999
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst

Do Until objRecordSet.EOF
    strADObjects = strADObjects & objRecordSet.Fields("Name").Value & vbCrLf
    'Wscript.Echo "Location: " & objRecordSet.Fields("DistinguishedName").Value
    objRecordSet.MoveNext
Loop

meine Abfrage funktioniert wie ein champ, aber wenn ich versuche zu filtern, die aus einer bestimmten OU, die Schrift entweder ein Fehler ausgegeben oder schließt gar nichts. Ich habe versucht viele verschiedene Varianten innerhalb von strFilter. Gibt es eine Möglichkeit können Sie Abfrage einer domain, für alle Computer, aber ohne die Ergebnisse von einer bestimmten ORGANISATIONSEINHEIT? ...oder Organisationseinheiten??? Ich habe versucht:

strFilter = "(&(objectClass=computer) (!(distinguishedName=*,OU=Computers,DC=mydomain,DC=myTLD)))"
strFilter = "(&(objectClass=computer) (!distinguishedName=*,OU=Computers,DC=mydomain,DC=myTLD))"
strFilter = "(&(objectClass=computer) (!(OU=Computers,DC=mydomain,DC=myTLD)))"
strFilter = "(&(objectClass=computer) (!OU=Computers,DC=mydomain,DC=myTLD))"

kann mir jemand irgendwelche Hinweise, wo ich vielleicht spaßen das? TIA~!

Edit: Auch gefunden und versucht, aber keine worky:

(&(!(ou:dn:=Computers))(objectClass=Computer))
InformationsquelleAutor thepip3r | 2011-01-11
Schreibe einen Kommentar