IPrintCoreHelper::EnumConstrainedOptions 方法(prcomoem.h)
IPrintCoreHelper::EnumConstrainedOptions 方法根据当前设置提供特定功能中约束的所有选项的列表。
语法
HRESULT EnumConstrainedOptions(
[in, optional] IN const DEVMODE *pDevmode,
[in] IN DWORD cbSize,
[in] IN PCSTR pszFeatureKeyword,
[out] OUT PCSTR * [] pConstrainedOptionList,
[out] OUT DWORD *pdwNumOptions
);
参数
[in, optional] pDevmode
指向 DEVMODEW 结构的指针。 如果提供了此指针,IPrintCoreHelper::EnumConstrainedOptions 应使用由 pDevmode 而不是默认或当前 DEVMODEW 结构指向的 DEVMODEW 结构。 如果从插件提供程序或从 IPrintOemPS::D evMode 或 IPrintOemUni::D evMode 或打印票证提供程序调用此方法,则需要此参数。 在大多数其他情况下,参数应 NULL。 当核心驱动程序 pDevmode 设置为 NULL时,它会修改其内部状态,而不是传入 DEVMODEW 结构的内部状态。 在完全 UI 替换等作期间,需要执行此作,其中 DDI 返回的 DEVMODEW 结构(如 DrvDocumentPropertySheets)由核心驱动程序的 UI 模块提供服务。
[in] cbSize
pDevmode 参数指向的 DEVMODEW 结构的大小(以字节为单位)。
[in] pszFeatureKeyword
包含功能名称的 ANSI 字符字符串。
[out] pConstrainedOptionList
指向 ANSI 字符串数组的指针。 IPrintCoreHelper::EnumConstrainedOptions 返回时,这些字符串将包含指定功能内约束的所有选项的名称。 调用方不负责释放数组或数组中的单个字符串。
[out] pdwNumOptions
指向一个变量的指针,该变量接收由 pConstrainedOptionList 参数指向的数组中的受约束选项数。
返回值
IPrintCoreHelper::EnumConstrainedOptions 应返回以下值之一。
返回代码 | 描述 |
---|---|
S_OK | 已为指定功能设置约束选项。 |
E_FAIL | 调用方提供的信息导致请求无效,例如对不存在的功能的请求。 |
E_INVALIDARG | 一个或多个参数无效。 此值可能意味着不支持该功能。 |
E_OUTOFMEMORY | 由于内存不足,无法创建选项数组或核心驱动程序无法为请求提供服务,因为内存不足。 |
此处未显式列出 E_UNEXPECTED 或其他故障 | 出现意外情况。 核心驱动程序可能处于无效状态。 调用方应退出并显示失败代码。 |
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | prcomoem.h (include Prcomoem.h) |