PTConvertDevModeToPrintTicket 函数 (prntvpt.h)
将 DEVMODE 结构转换为 IStream 中的打印票证。
语法
HRESULT PTConvertDevModeToPrintTicket(
[in] HPTPROVIDER hProvider,
ULONG cbDevmode,
[in] PDEVMODE pDevmode,
[in] EPrintTicketScope scope,
IStream *pPrintTicket
);
parameters
[in] hProvider
打开的打印票证提供程序的句柄。 此句柄由 PTOpenProvider 或 PTOpenProviderEx 函数返回。
cbDevmode
DEVMODE 的大小(以字节为单位)。
[in] pDevmode
指向 DEVMODE 的指针。
[in] scope
一个值,该值指定 pPrintTicket 的范围。 此值可以指定打印作业中的单个页面、整个文档或所有文档。 pDevmode 中超出指定范围的设置不会包含在 pPrintTicket 中。 请参阅“备注”。
pPrintTicket
指向 IStream 的指针,其查找位置位于打印票证的开头。
返回值
如果操作成功,则返回值为S_OK,否则 HRESULT 包含错误代码。
如果 hProvider 在不同的线程中打开,则 E_INVALIDARG HRESULT 。
有关 COM 错误代码的详细信息,请参阅错误处理。
注解
如果 pDevmode 指向其他打印机,则其设置可能会丢失并替换为默认值。
pDevmode 中超出作用域的设置不包括在 pPrintTicket 中。 例如,如果范围是单个页面,则不包括作业范围的设置和文档范围的设置。 作业范围包括文档范围和页面范围。 文档范围包括页面范围。
PTConvertDevModeToPrintTicket 从流的当前查找点开始,将打印票证写入 pPrintTicket 引用的 IStream。 在 PTConvertDevModeToPrintTicket 返回后,调用方必须将查找点重置为初始查找点,以读取函数返回的打印票证。
要求
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | prntvpt.h |
Library | Prntvpt.lib |
DLL | Prntvpt.dll |