AddPrinterDriver 函式

AddPrinterDriver 函式會安裝本機或遠端印表機驅動程式,並關聯設定、資料和驅動程式檔案。

如需安裝或升級印表機驅動程式的更多彈性,請使用 AddPrinterDriverEx 函式,因為它允許嚴格升級、嚴格降級、只複製較新的檔案,以及複製所有檔案 (,而不論檔案時間戳記) 為何。

注意

不再建議在沒有驅動程式套件的情況下安裝印表機驅動程式。 請改用 InstallPrinterDriverFromPackage

語法

BOOL AddPrinterDriver(
  _In_ LPTSTR pName,
  _In_ DWORD  Level,
  _In_ LPBYTE pDriverInfo
);

參數

pName [in]

Null 終止字串的指標,指定應該安裝驅動程式的伺服器名稱。

如果 pNameNull,則會在本機安裝驅動程式。

層級 [in]

pDriverInfo指向的結構版本。

此值可以是 2、3、4、6 或 8。

pDriverInfo [in]

結構的指標,其中包含印表機驅動程式資訊。 這取決於 Level的值。

印表機磁片磁碟機結構
2 DRIVER_INFO_2
3 DRIVER_INFO_3
4 DRIVER_INFO_4
6 DRIVER_INFO_6
8 DRIVER_INFO_8

如果pDriverInfo所指向結構的pEnvironment成員是Null,則會使用呼叫端/用戶端 (不是目的地/伺服器) 的目前環境。

傳回值

如果函式成功,則傳回值是非零值。

如果此函式失敗,則傳回值為零。

備註

注意

這是封鎖或同步函式,可能不會立即傳回。 此函式傳回的速度取決於執行時間因素,例如網路狀態、列印伺服器設定,以及撰寫應用程式時難以預測的印表機驅動程式實作因素。 從管理與使用者介面互動的執行緒呼叫此函式,可能會使應用程式看起來沒有回應。

呼叫端必須具有 SeLoadDriverPrivilege

在應用程式呼叫 AddPrinterDriver 函式之前,驅動程式所需的所有檔案都必須複製到系統的印表機驅動程式目錄。 應用程式可以藉由呼叫 GetPrinterDriverDirectory 函式來擷取此目錄的名稱。

應用程式可以呼叫 EnumPrinterDrivers 函式來判斷目前安裝的印表機驅動程式。

規格需求

需求
最低支援的用戶端
Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限桌面應用程式]
標頭
Winspool.h (包含 Windows.h)
程式庫
Winspool.lib
DLL
Winspool.drv
Unicode 與 ANSI 名稱
AddPrinterDriverW (Unicode) 和 AddPrinterDriverA (ANSI)

另請參閱

列印

列印多工緩衝處理器 API 函式

AddPrinterDriverEx

DRIVER_INFO_2

DRIVER_INFO_3

DRIVER_INFO_4

DRIVER_INFO_6

EnumPrinterDrivers

GetPrinterDriverDirectory