ADS_STATUSENUM 枚举 (iads.h)
ADS_STATUSENUM枚举使用 IDirectorySearch::SetSearchPreference 方法指定搜索首选项集的状态。
语法
typedef enum __MIDL___MIDL_itf_ads_0000_0000_0019 {
ADS_STATUS_S_OK = 0,
ADS_STATUS_INVALID_SEARCHPREF,
ADS_STATUS_INVALID_SEARCHPREFVALUE
} ADS_STATUSENUM;
常量
ADS_STATUS_S_OK 值: 0 已成功设置搜索首选项。 |
ADS_STATUS_INVALID_SEARCHPREF 在 ADS_SEARCHPREF_INFO 结构的 dwSearchPref 成员中指定的搜索首选项无效。 必须从 ADS_SEARCHPREF_ENUM 枚举获取搜索首选项。 |
ADS_STATUS_INVALID_SEARCHPREFVALUE 在 ADS_SEARCHPREF_INFO 结构的 vValue 成员中指定的值对于相应的搜索首选项无效。 |
注解
IDirectorySearch::SetSearchPreference 方法将 dwStatus 成员ADS_SEARCHPREF_INFO结构设置为ADS_STATUSENUM值之一,以指示相应搜索首选项的状态。 调用方可以使用此状态值来决定是否执行搜索。
如果设置了有效的搜索首选项,则可以设置 ADS_STATUS_INVALID_SEARCHPREF 状态值,但不支持该首选项。 例如,如果设置了ADS_SEARCHPREF_SORT_ON,但与之通信的服务器不支持 LDAP 服务器端排序控件,则 ADS_SEARCHPREF_INFO 结构的 dwStatus 成员将设置为由 IDirectorySearch::SetSearchPreference 调用ADS_STATUS_INVALID_SEARCHPREF。
注意 由于 VBScript 无法从类型库读取数据,因此 VBScript 应用程序无法识别上面定义的符号常量。 应改用数值常量在 VBScript 应用程序中设置相应的标志。 若要将符号常量用作良好的编程做法,请编写此类常量的显式声明,如以下代码示例中所示。
示例
下面的代码示例演示如何将 ADS_STATUSENUM 枚举与 IDirectorySearch::SetSearchPreference 方法结合使用来确定搜索首选项的状态。
/***************************************************************************
SetAndCheckSearchTimeout()
***************************************************************************/
HRESULT SetAndCheckSearchTimeout(IDirectorySearch *pSearch,
DWORD dwTimeout,
ADS_STATUSENUM *pStatus)
{
if(!pSearch || !pStatus)
{
return E_INVALIDARG;
}
HRESULT hr;
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_TIMEOUT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = dwTimeout;
SearchPref.dwStatus = ADS_STATUS_S_OK;
hr = pSearch->SetSearchPreference(&SearchPref, 1);
if(S_OK != hr)
{
return hr;
}
*pStatus = SearchPref.dwStatus;
return S_OK;
}
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista |
最低受支持的服务器 | Windows Server 2008 |
标头 | iads.h |