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 | 只读域控制器 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista |
最低受支持的服务器 | Windows Server 2008 |
标头 | cmnquery.h |