PTGetPrintCapabilities 函数 (prntvpt.h)
检索格式化为符合 XML 打印架构的打印机功能。
语法
HRESULT PTGetPrintCapabilities(
[in] HPTPROVIDER hProvider,
[in] IStream *pPrintTicket,
IStream *pCapabilities,
[out] BSTR *pbstrErrorMessage
);
参数
[in] hProvider
要检索其打印功能的打开提供程序的句柄。 此句柄由 PTOpenProvider 或 PTOpenProviderEx 函数返回。
[in] pPrintTicket
指向流的指针,其查找位置位于打印票证内容的开头。 此参数可以为 NULL。
pCapabilities
指向将写入打印功能的流的指针,从当前查找位置开始。
[out] pbstrErrorMessage
指向指定 pPrintTicket 的无效内容(如果有)的字符串的指针。 如果有效,则此值为 NULL。
返回值
如果操作成功,则返回值S_OK。
如果 hProvider 在不同的线程中打开,则会E_INVALIDARG HRESULT 。
如果 pPrintTicket 不符合 打印架构 ,则会E_PRINTTICKET_FORMAT HRESULT 。
如果 pCapabilities 不符合 打印架构 ,则会E_PRINTCAPABILITIES_FORMAT HRESULT 。
如果 hProvider 在不同的线程中打开,则会E_INVALIDARG HRESULT 。
否则, HRESULT 中返回另一个错误代码。 有关 COM 错误代码的详细信息,请参阅错误处理。
注解
当值不为 NULL 时,打印机驱动程序使用 pPrintTicket 值 () ,以在驱动程序生成因当前设置而变化的打印机功能时创建设置。
函数返回时, pPrintTicket 的查找位置位于打印票证内容的末尾, pCapabilities 的查找位置位于流的末尾。 如果调用方对 pCapabilities 使用内存流,例如 CreateStreamOnHGlobal 创建的流,则调用方负责在读取数据之前重置查找位置。
如果函数返回时 pbstrErrorMessage 不 为 NULL ,则调用方必须使用 SysFreeString 释放字符串。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | prntvpt.h |
Library | Prntvpt.lib |
DLL | Prntvpt.dll |