描述
打开一个打印机票提供者的实例。
C++ 语法
HRESULT PTOpenProviderEx( __in PCWSTR pszPrinterName, __in DWORD maxVersion, __in DWORD prefVersion, __out HPTPROVIDER *phProvider, __out DWORD *usedVersion ); |
PowerBASIC 语法
FUNCTION PTOpenProviderEx ( _ BYVAL pszPrinterName AS DWORD, _ BYVAL maxVersion AS DWORD, _ BYVAL prefVersion AS DWORD,_ BYREF phProvider AS DWORD, _ BYREF usedVersion AS DWORD _ ) AS LONG |
参数
pszPrinterName
[in]指向打印队列全名的指针。
maxVersion
[in]呼叫者支持的最新版本的打印模式。
prefVersion
[in]呼叫者请求的打印模式的版本。
phProvider
[out]指向提供程序句柄的指针。
usedVersion
[out]指向打印机票提供者将使用的打印模式版本的指针。
返回值
如果操作成功,返回值为S_OK,否则HRESULT包含错误代码。
备注
注意这是一个阻塞或同步功能,可能不会立即返回。How quickly this function returns depends on run-time factors such as network status, print server configuration, and printer driver implementation梖actors that are difficult to predict when writing an application.从管理与用户界面交互的线程调用此函数可能会使应用程序无响应。
pszPrinterName参数必须是全名,而不是截断的名称,因为它可能在DEVMODE中显示。
Print Schema的第一个版本随Windows Vista发布,是版本1。如果打印机票提供商不支持prefVersion,PTOpenProviderEx将成功打开句柄并返回使用的版本中的较早版本。
为避免资源泄漏,phProvider必须使用PTCloseProvider关闭。
引用文件 #INCLUDE Once
Prntvpt.inc