AddPrintProvidor 函数

重要

2021 年 7 月 6 日, KB5005010 引入了基于注册表的可选配置选项,将对此 API 的访问限制为仅限管理员用户。 此选项已关闭为默认选项。

2021 年 8 月 10 日, KB5005652 将此配置的默认值更改为需要管理员权限才能安装新的打印机驱动程序。

AddPrintProvidor 函数安装本地打印提供程序并链接配置、数据和提供程序文件。

语法

BOOL AddPrintProvidor(
  _In_ LPTSTR pName,
  _In_ DWORD  Level,
  _In_ LPBYTE pProviderInfo
);

参数

pName [in]

指向以 null 结尾的字符串的指针,该字符串指定应安装提供程序的服务器的名称。 对于仅支持提供程序本地安装的系统,此参数应为 NULL

级别 [in]

pProviderInfo 指向的结构级别。 可以是以下项之一。

含义
1
函数使用 PROVIDOR_INFO_1 结构。
2
函数使用 PROVIDOR_INFO_2 结构。

pProviderInfo [in]

指向打印提供程序结构的指针,如 Level 所示。

返回值

如果函数成功,则返回值为非零值。

如果函数失败,则返回值为零。

注解

注意

这是一个阻塞或同步函数,可能不会立即返回。 此函数的返回速度取决于运行时因素,例如网络状态、打印服务器配置以及编写应用程序时难以预测的打印机驱动程序实现因素。 从管理与用户界面交互的线程调用此函数可能会使应用程序看起来无响应。

在应用程序调用 AddPrintProvidor 函数之前,必须将提供程序所需的所有文件复制到 SYSTEM32 目录。

可通过调用 DeletePrintProvidor 删除由 AddPrintProvidor 添加的提供程序。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Winspool.h (包括 Windows.h)

Winspool.lib
DLL
Winspool.drv
Unicode 和 ANSI 名称
AddPrintProvidorW (Unicode) 和 AddPrintProvidorA (ANSI)

另请参阅

打印

打印后台处理程序 API 函数

DeletePrintProvidor

PROVIDOR_INFO_1

PROVIDOR_INFO_2