GetPrinterDriverPackagePath 函数
检索打印服务器上指定打印机驱动程序包的路径。
语法
HRESULT GetPrinterDriverPackagePath(
_In_ LPCTSTR pszServer,
_In_ LPCTSTR pszEnvironment,
_In_ LPCTSTR pszLanguage,
_In_ LPCTSTR pszPackageID,
_Inout_ LPTSTR pszDriverPackageCab,
_In_ DWORD cchDriverPackageCab,
_Out_ LPDWORD pcchRequiredSize
);
参数
-
pszServer [in]
-
指向以 null 结尾的常量字符串的指针,该字符串指定打印服务器的名称。 对本地计算机使用 NULL 。
-
pszEnvironment [in]
-
指向以 null 结尾的常量字符串的指针,该字符串指定处理器体系结构 (例如,Windows NT x86) 。 这可以是 NULL。
-
pszLanguage [in]
-
指向常量、以 null 结尾的字符串的指针,该字符串指定所安装的驱动程序的 多语言用户界面 语言。 这可以是 NULL。
-
pszPackageID [in]
-
指向以 null 结尾的常量字符串的指针,该字符串指定驱动程序包的 ID。
-
pszDriverPackageCab [in, out]
-
指向以 null 结尾的字符串的指针,该字符串指定驱动程序包的内阁文件的路径。 这可以是 NULL。 请参阅“备注”。
-
cchDriverPackageCab [in]
-
pszDriverPackageCab 缓冲区的大小(以字符为单位)。 这可以是 NULL。
-
pcchRequiredSize [out]
-
指向 pszDriverPackageCab 缓冲区所需大小的指针。
返回值
如果操作成功,则返回值为S_OK,否则 HRESULT 将包含错误代码。
有关 COM 错误代码的详细信息,请参阅 错误处理。
备注
注意
这是一个阻塞或同步函数,可能不会立即返回。 此函数的返回速度取决于运行时因素,例如网络状态、打印服务器配置以及编写应用程序时难以预测的打印机驱动程序实现因素。 从管理与用户界面交互的线程调用此函数可能会使应用程序看起来无响应。
若要获取 cchDriverPackageCab 的值,请使用 NULL 调用 函数作为 pszDriverPackageCab 的值。 使用 pcchRequiredSize 中返回的值作为 cchDriverPackageCab 的值,然后再次调用函数。
pszPackageID 通常是从调用 GetCorePrinterDrivers 获取的。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2008 [仅限桌面应用] |
标头 |
|
库 |
|
DLL |
|
Unicode 和 ANSI 名称 |
GetPrinterDriverPackagePathW (Unicode) 和 GetPrinterDriverPackagePathA (ANSI) |