ADS_STATUSENUM列舉 (iads.h)
ADS_STATUSENUM列舉會指定使用 IDirectorySearch::SetSearchPreference 方法設定的搜尋喜好設定狀態。
Syntax
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 |