OPENQUERYWINDOW 結構 (cmnquery.h)

OPENQUERYWINDOW 結構會與 ICommonQuery::OpenQueryWindow 方法搭配使用,以初始化目錄服務查詢對話方塊。

語法

typedef struct {
  DWORD         cbStruct;
  DWORD         dwFlags;
  CLSID         clsidHandler;
  LPVOID        pHandlerParameters;
  CLSID         clsidDefaultForm;
  IPersistQuery *pPersistQuery;
  union {
    void         *pFormParameters;
    IPropertyBag *ppbFormParameters;
  };
} OPENQUERYWINDOW, *LPOPENQUERYWINDOW;

成員

cbStruct

包含 結構的大小,以位元組為單位。 這個成員用於版本設定和參數驗證,而且必須在呼叫 ICommonQuery::OpenQueryWindow 之前填入。

dwFlags

包含一組旗標,可定義目錄服務查詢對話框的行為。 這可以是零或下列清單中所列一或多個值的組合。

OQWF_DEFAULTFORM

讓查詢對話框在初始化時選取 clsidDefaultForm 成員所指定的表單。

OQWF_HIDEMENUS

讓對話框隱藏功能表列。

OQWF_HIDESEARCHUI

導致建立查詢對話框,而不需要標準搜尋使用者介面。 這包括 [立即尋找]、[ 停止 ] 和 [ 清除所有 ] 推播按鈕。

OQWF_ISSUEONOPEN

當第一次顯示查詢對話框時,會導致執行查詢。

OQWF_LOADQUERY

讓查詢對話框從 pPersistQuery 成員中的 IPersistQuery 介面擷取查詢。

OQWF_OKCANCEL

如果適用,會導致查詢對話框顯示 [確定 ] 和 [ 取消] 按鈕。 實際顯示在對話框中的按鈕會取決於所使用的表單和其他指定的旗標。

OQWF_PARAMISPROPERTYBAG

指出 ppbFormParameters 成員包含 IPropertyBag 介面。

OQWF_REMOVEFORMS

導致建立查詢對話框,而不使用 [ 尋找: ] 卷標所代表的窗體選擇標籤和下拉式清單。

OQWF_REMOVESCOPES

導致建立查詢對話框,而不使用 In: 標籤所代表的範圍標籤和下拉式清單。

OQWF_SAVEQUERYONOK

讓查詢對話框關閉時,將查詢儲存至 pPersistQuery 成員中的 IPersistQuery 介面

OQWF_SHOWOPTIONAL

導致查詢對話框在表單下拉式清單中顯示選擇性表單。 選擇性表單是在 CQFORM 結構的 dwFlags 成員中指定CQFF_ISOPTIONAL旗標的表單。

OQWF_SINGLESELECT

讓查詢對話框成為查詢結果清單單一選取專案。

clsidHandler

包含 CLSID 值,指定查詢對話框要使用的查詢處理程式。 這個成員的值也會決定 pHandlerParameters 成員所指向的結構類型。

CLSID_DsQuery

這是標準目錄服務查詢,以及目前唯一支援的查詢。

pHandlerParameters

結構指標,其中包含查詢處理程序的數據。 這個成員所指向的結構類型是由 clsidHandler 成員所定義。 下列清單會根據 clsidHandler 成員的值列出可能的結構類型。

CLSID_DsQuery

包含 DSQUERYINITPARAMS 結構的指標。

clsidDefaultForm

指定要顯示在查詢對話框中的預設表單。 如果 dwFlags 不包含 OQWF_DEFAULTFORM,則會忽略此成員。 此成員可以包含自定義查詢表單的 CLSID 或其中一個系統提供的表單。

CLSID_DsFindAdvanced

識別 自定義搜尋 查詢表單。

CLSID_DsFindComputer

識別 [計算機 ] 查詢表單。

CLSID_DsFindContainer

識別 [組織單位 ] 查詢表單。

CLSID_DsFindDomainController

識別 域控制器 查詢表單。

CLSID_DsFindFrsMembers

識別 FRS 成員 查詢表單。

CLSID_DsFindObjects

保留的。

CLSID_DsFindPeople

識別 [使用者]、[聯繫人] 和 [群組 ] 查詢窗體。

CLSID_DsFindPrinter

識別 印表機 查詢表單。

CLSID_DsFindVolume

識別 共用資料夾 查詢表單。

CLSID_DsFindWriteableDomainController

識別 域控制器 查詢表單,並顯示可寫入的域控制器。

pPersistQuery

用來儲存和擷取查詢數據的 IPersistQuery 介面指標。 此數據與查詢本身有關,而不是查詢的結果。 如果 dwFlags 包含 OQWF_LOADQUERY,則會從這個介面取得查詢數據。 如果 dwFlags 包含 OQWF_SAVEQUERY,查詢數據就會儲存至這個介面。

pFormParameters

保留的。 結構或介面的指標,提供表單的參數初始化數據。 此指標的內容是由 clsidDefaultForm 成員所指定的表單類別所定義。

ppbFormParameters

IPropertyBag 介面的指標,提供窗體的參數初始化數據。 這個屬性包的內容是由 clsidDefaultForm 成員所指定的表單類別所定義。 下列系統提供的表單支援此成員。

CLSID_DsFindPrinter

此窗體會從屬性包取得下列屬性。

屬性名稱 描述
printName 包含初始印表機名稱。
printLocation 包含初始印表機位置。
printModel 包含印表機的初始型號名稱和/或編號。
 

CLSID_DsFindComputer

使用此表單來指定電腦角色。 屬性包必須包含 computerRole。 使用下列值的組合來限制包含哪些角色:

角色
0x0000 所有角色
0x0001 工作站或伺服器
0x0002 所有域控制器
0x0004 可寫入的域控制器
0x0008 Read-only Domain Controllers

規格需求

需求
最低支援的用戶端 Windows Vista
最低支援的伺服器 Windows Server 2008
標頭 cmnquery.h

另請參閱

CQFORM

DSQUERYINITPARAMS

在 Active Directory 網域服務 中顯示結構

ICommonQuery::OpenQueryWindow

IPersistQuery