ldap_search函数返回错误代码10使用c + + Win32 API?

我正在使用ldap函数来获取使用win32 api的用户属性值。

用户名是arun

在ldap_functions里像init,set_options,connect,bind是成功的,但是ldap的search函数返回错误码10。

在这里我的代码

 errorCode = ldap_search_s( pLdapConnection, // Session handle pMyDN, // DN to start search LDAP_SCOPE_SUBTREE, // Scope LDAP_SCOPE_BASE LDAP_SCOPE_SUBTREE pMyFilter, // Filter NULL, // Retrieve list of attributes 0, // Get both attributes and values &pSearchResult); 

pMyDN指定`“DC = SANJU,DC = CO,DC = IN”…

返回代码10给出的错误是LDAP_REFERRAL但我不能得到它。

但是我把pMyDN值写入"OU=Marketing,DC=SANJU,DC=CO,DC=IN"

现在searchfunction成功了,那么问题是什么?

我需要这个function,而不使用OU,任何人都可以帮忙吗?

LDAP_REFERRAL:如果给定的基本DN是当前服务器未处理的条目,并且引用URL标识用于处理该条目的不同服务器,则由Directory server发送。

不管DNS和AD在不同的URL(IP)中是否有可信规则,都会出现这个问题。

LDAP响应不使用error codes ,它们使用result codes – 所谓的,因为非零响应不一定是错误。 10就是一个例子,这是一个推荐。 引荐将包含有关可以处理请求的服务器的信息。 如果目录代理服务器不适用于引荐,则LDAP客户端必须遵循引荐。

比较操作响应也使用结果代码来传送比较结果。