勇芳软件工作室.汉化:  Printing > Print Spooler API > Printer Driver Installation >

AddPrinterDriver

Previous pageReturn to chapter overviewNext page

描述

 

AddPrinterDriver功能安装本地或远程打印机驱动程序,并链接配置,数据和驱动程序文件。

 

为了更好的安装或升级打印机驱动程序的灵活性,请使用AddPrinterDriverEx功能,因为它允许严格升级,严格降级,仅复制较新的文件,并复制所有文件(不管文件时间戳)。

 

C++ 语法

 

BOOL AddPrinterDriver(

__in LPTSTR pName,

__in DWORD Level,

__in LPBYTE pDriverInfo

);

 

PowerBASIC 语法

 

FUNCTION AddPrinterDriverA ( _

BYREF pName AS ASCIIZ, _

BYVAL Level AS DWORD, _

BYREF pDriverInfo AS ANY _

) AS LONG

 

Unicode版本:

 

FUNCTION AddPrinterDriverW ( _

BYREF pName AS WSTRINGZ, _

BYVAL Level AS DWORD, _

BYREF pDriverInfo AS ANY _

) AS LONG

 

参数

 

pName

 

[in]指向以空值终止的字符串的指针,该字符串指定应安装驱动程序的服务器的名称。

 

如果PNAME为NULL,则驱动程序将在本地安装。

 

Windows 95/98 / Me:此参数必须为NULL。AddPrinterDriver功能只能安装本地打印机驱动程序

 

Level

 

[in]指定pDriverInfo指向的结构的版本。

 

该值可以是2,3,4,6或8。

 

pDriverInfo

 

[in]指向包含打印机驱动程序信息的结构的指针。这取决于水平的值。

 

的价值Level

打印机驱动结构

2

DRIVER_INFO_2

3

Windows 95/98 / Me,Windows NT 4.0或更高版本:DRIVER_INFO_3

4

Windows 2000 / XP或更高版本:DRIVER_INFO_4

6

Windows Me,Windows 2000 / XP或更高版本:DRIVER_INFO_6

8

Windows Vista或更高版本:DRIVER_INFO_8

 

如果pDriverInfo指向的结构的pEnvironment成员为NULL,则使用调用者/客户端(而不是目标/服务器)的当前环境。

 

返回值

 

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

 

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

 

备注

 

来电者必须有SeLoadDriverPrivilege.

 

在应用程序调用{??989796162}功能之前,必须将驱动程序所需的所有文件复制到系统的打印机驱动程序目录。应用程序可以通过调用GetPrinterDriverDirectory函数来检索此目录的名称。

 

应用程序可以通过调用EnumPrinterDrivers功能来确定当前安装的打印机驱动程序。

 

Windows 95/98 / Me:Microsoft Layer for Unicode支持AddPrinterDriverW.

 

引用文件 #INCLUDE Once

 

WinSpool.inc(包括Windows.inc)