Ben..
Yes this may help..
However, I did find some information from Microsoft that uses - "ntdsDsa" to search the whole catalog. I like the fact that you can select a specific domain in your Net Manager, but I need to start at the top of the tree and look through the whole forest.
From - http://msdn.microsoft.com/library/default.asp?url=/library/en-us/netdir/ad/binding_to_the_global_catalog.asp
quote:
To search the entire forest
Bind to the root of the GC namespace (GC:).
Enumerate the GC container. The GC container contains a single object that you can use to search the entire forest.
Use the object in the container to perform the search. In C/C++, call QueryInterfaceto get an IDirectorySearch pointer on the object so that you can use the IDirectorySearch interface to perform the search. In Visual Basic, use the object returned from the enumeration in your ADO query.
To enumerate the Global Catalog servers in a site, perform an LDAP subtree search of cn=,cn=sites,, using the following filter string:
(&(objectCategory=ntdsDsa)(options:1.2.840.113556.1.4.803:=1))
This filter uses the OID for the LDAP_MATCHING_RULE_BIT_AND operator (1.2.840.113556.1.4.803) to find nTDSDSA objects that have the low-order bit set in the bitmask of the options attribute. The low-order bit, which corresponds to the NTDSDSA_OPT_IS_GC constant defined in Ntdsapi.h, identifies the nTDSDSA object of a Global Catalog server.
The parent of the nTDSDSA object is the server object, and the dNSHostName property of the server object is the DNS name of the Global Catalog server.
You cannot use #define constants such as NTDSDSA_OPT_IS_GC and LDAP_MATCHING_RULE_BIT_AND directly in a search filter string. However, you could use these constants as arguments to a function such as wsprintf to insert the constant values into a filter string.
Kent