共用方式為


UploadPrinterDriverPackage 函式

將印表機驅動程式上傳至列印伺服器的驅動程式存放區,以便藉由呼叫 InstallPrinterDriverFromPackage加以安裝。

語法

HRESULT UploadPrinterDriverPackage(
  _In_    LPCTSTR pszServer,
  _In_    LPCTSTR pszInfPath,
  _In_    LPCTSTR pszEnvironment,
  _In_    DWORD   dwFlags,
  _In_    HWND    hwnd,
  _Out_   LPTSTR  pszDestInfPath,
  _Inout_ PULONG  pcchDestInfPath
);

參數

pszServer [in]

常數、以 Null 結尾的字串指標,指定列印伺服器的名稱。 如果伺服器是本機電腦,請使用 Null

pszInfPath [in]

常數 、null 終止字串的指標,指定驅動程式 .inf 檔案的來源路徑。

pszEnvironment [in]

指定伺服器處理器 (架構的常數 null 終止字串指標,例如,Windows NT x86) 。 這可以是 Null

dwFlags [in]

這可以是下列任何值:

意義
UPDP_SILENT_UPLOAD
上傳期間不會顯示 UI。
UPDP_UPLOAD_ALWAYS
即使套件已經在伺服器的驅動程式存放區中,檔案也會上傳。
UPDP_CHECK_DRIVERSTORE
上傳之前,會先檢查伺服器的驅動程式存放區,以查看套件是否已存在。 如果已設定UPDP_UPLOAD_ALWAYS,則會忽略此設定。

hwnd [in]

複製使用者介面的控制碼。

pszDestInfPath [out]

驅動程式存放區中目的地路徑的指標,驅動程式的 .inf 檔案已複製到其中。

pcchDestInfPath [in, out]

在輸入上,指定 pszDestInfPath 緩衝區的大小,以字元為單位。 在輸出中,接收路徑字串的大小,以字元為單位,包括終止的 Null 字元。

傳回值

如果作業成功,傳回值會S_OK,否則 HRESULT 會包含錯誤碼。

如需 COM 錯誤碼的詳細資訊,請參閱 錯誤處理

備註

注意

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

驅動程式存放區通常是 %windir%\inf 或 %windir%\System32\DriverStore\FileRepository。

一次只能上傳一個套件。 如果套件相依于其他人,則必須個別上傳這些套件。

只能上傳已簽署的驅動程式套件。

規格需求

需求
最低支援的用戶端
Windows Vista [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2008 [僅限傳統型應用程式]
標頭
Winspool.h (包含 Windows.h)
程式庫
Winspool.lib
DLL
Spoolss.dll
Unicode 與 ANSI 名稱
UploadPrinterDriverPackageW (Unicode) 和 UploadPrinterDriverPackageA (ANSI)

另請參閱

列印

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