共用方式為


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 結束的字串指標。

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 [僅限傳統型應用程式]
標頭
Winspool.h (包含 Windows.h)
程式庫
Winspool.lib
DLL
Spoolss.dll
Unicode 與 ANSI 名稱
GetPrinterDriverPackagePathW (Unicode) 和 GetPrinterDriverPackagePathA (ANSI)

另請參閱

列印

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