ConvertPrintTicketToDevModeThunk2 函数
[此函数不受支持,可能在 Windows 的未来版本中被禁用或删除。 PTConvertPrintTicketToDevMode 提供等效的功能,应改用。]
将打印票证转换为 DEVMODE 结构。
语法
HRESULT ConvertPrintTicketToDevModeThunk2(
_In_ HPTPROVIDER hProvider,
_In_ BYTE *pPrintTicket,
_In_ ULONG cbSize,
_In_ INT baseType,
_In_ DWORD scope,
_Out_ BYTE **ppDevmode,
_Out_ ULONG *pcbDevModeLength,
_Out_opt_ BSTR *errMsg
);
parameters
-
hProvider [in]
-
打开的打印票证提供程序的句柄。 此句柄由 BindPTProviderThunk 函数返回。
-
pPrintTicket [in]
-
包含要转换的打印票证的缓冲区。
-
cbSize [in]
-
在 pPrintTicket 中传递的缓冲区的大小(以字节为单位)。
-
baseType [in]
-
一个 值,该值指示在 pPrintTicket 未指定 DEVMODE 的每个可能设置时,是使用用户的默认 DEVMODE 还是打印队列的默认 DEVMODE 向输出 DEVMODE 提供值。 此参数的值必须是 EDefaultDevmodeType 枚举的成员,强制转换为 INT。
-
scope [in]
-
一个 值,该值指定 pPrintTicket 的范围。 此值可以指定打印作业中的单个页面、整个文档或所有文档。 此参数的值必须是 EPrintTicketScope 枚举的成员,强制转换为 DWORD。
-
ppDevmode [out]
-
新创建的 DEVMODE 的地址。 此函数调用 CoTaskMemAlloc 来分配此缓冲区。 不再需要缓冲区时,调用方必须通过调用 CoTaskMemFree 来释放缓冲区。
-
devModeLength [out]
-
ppDevmode 中返回的 DEVMODE 的大小(以字节为单位)。
-
errMsg [out, optional]
-
指向指定 pPrintTicket 中打印票证无效(如果有)的字符串的指针。 如果有效,则为 NULL。 如果函数返回时 errMsg 不为 NULL ,则调用方必须使用 SysFreeString 释放字符串。
返回值
如果该方法成功,则返回 S_OK;否则,它将返回 HRESULT 错误代码。 有关 COM 错误代码的详细信息,请参阅 错误处理。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows XP [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2003 [仅限桌面应用] |
DLL |
|