EnumPrintProcessors 函式
EnumPrintProcessors函式會列舉安裝在指定伺服器上的列印處理器。
語法
BOOL EnumPrintProcessors(
_In_ LPTSTR pName,
_In_ LPTSTR pEnvironment,
_In_ DWORD Level,
_Out_ LPBYTE pPrintProcessorInfo,
_In_ DWORD cbBuf,
_Out_ LPDWORD pcbNeeded,
_Out_ LPDWORD pcReturned
);
參數
-
pName [in]
-
Null 終止字串的指標,指定列印處理器所在的伺服器名稱。 如果此參數為 Null,則會列舉本機列印處理器。
-
pEnvironment [in]
-
Null 終止字串的指標,指定環境 (例如 Windows x86、Windows IA64 或 Windows x64) 。 如果此參數為 Null,則會使用呼叫應用程式和用戶端電腦的目前環境, (不是目的地應用程式和列印伺服器) 。
-
層級 [in]
-
pPrintProcessorInfo緩衝區中傳回的資訊類型。 此參數必須是 1。
-
pPrintProcessorInfo [out]
-
接收 PRINTPROCESSOR_INFO_1 結構陣列之緩衝區的指標。 每個結構都會描述可用的列印處理器。 緩衝區必須夠大,才能接收結構成員指向的結構陣列和任何字串。
若要判斷所需的緩衝區大小,請呼叫 EnumPrintProcessors 並將 cbBuf 設定為零。 EnumPrintProcessors 失敗, GetLastError 會傳回ERROR_INSUFFICIENT_BUFFER,而 ERROR_INSUFFICIENT_BUFFER參數 會傳回保存結構和其資料陣列所需的緩衝區大小,以位元組為單位。
-
cbBuf [in]
-
pPrintProcessorInfo所指向緩衝區的大小,以位元組為單位。
-
vmNeeded [out]
-
變數的指標,如果函式成功,該變數會接收復制到 pPrintProcessorInfo 緩衝區的位元組數目。 如果緩衝區太小,函式會失敗,而且變數會收到所需的位元組數目。
-
pcReturned [out]
-
變數的指標,可接收 pPrintProcessorInfo 緩衝區中傳回的結構數目。
傳回值
如果函式成功,則傳回值是非零值。
如果此函式失敗,則傳回值為零。
備註
注意
這是封鎖或同步函式,可能不會立即傳回。 此函式傳回的速度取決於執行時間因素,例如網路狀態、列印伺服器設定,以及撰寫應用程式時難以預測的印表機驅動程式實作因素。 從管理與使用者介面互動的執行緒呼叫此函式,可能會使應用程式看起來沒有回應。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows 2000 Server [僅限桌面應用程式] |
標頭 |
|
程式庫 |
|
DLL |
|
Unicode 與 ANSI 名稱 |
EnumPrintProcessorsW (Unicode) 和 EnumPrintProcessorsA (ANSI) |