Search for all Domains in a Forest using ADSI in C++ -


so need find domains in forest host in.

according i've read asking "namingcontexts" after opening open gc://rootdse should give me this, but, seeing naming contexts forest root. i've checked hw, dc , running, gc good. know data there since get-adforest shows domains i'm looking for. missing???

here code :

hresult hr; iads* pgccontainer = null; variant varcontainerretval; std::vector<std::string> vecupnsuffixes; bstr path = null;  // initialize com.  hr = coinitialize(null); if(failed(hr)){     loginfo("coinitialize failed hr = %08x",hr); }  variantinit(&varcontainerretval);  // other domains in forest hr = getgcrootdsecontainerobject(&pgccontainer); // adsgetobject("gc://rootdse",iid_iads,(void**)pgccontainer); if (succeeded(hr) && pgccontainer) {     // namingcontext     hr = pgccontainer->get(_bstr_t(ldap_obj_nameing_ctx.c_str()),&varcontainerretval);     vecforestdomains = getvariantarraycontentsasvector(varcontainerretval); // name implies moves variant array std::vector<std::string>     variantinit(&varcontainerretval); }; 

this works extent, 5 entries back, root domain, no other domains listed. , weird part saw work day ago.

this now:

+       [0] "dc=boston,dc=com"   +       [1] "cn=configuration,dc=boston,dc=com"  +       [2] "cn=schema,cn=configuration,dc=boston,dc=com"    +       [3] "dc=domaindnszones,dc=boston,dc=com"     +       [4] "dc=forestdnszones,dc=boston,dc=com"     

this seeing yesterday, no code changes in between

+       [0] "dc=boston,dc=com"   +       [1] "dc=southend,dc=boston,dc=com +       [2] "cn=configuration,dc=boston,dc=com"  +       [3] "cn=schema,cn=configuration,dc=boston,dc=com"    +       [4] "dc=domaindnszones,dc=southend,dc=boston,dc=com"     +       [5] "dc=forestdnszones,dc=boston,dc=com"     


Comments