GetJobAttributesEx 函式 (winsplp.h)
警告
從 Windows 10 開始,支援第三方列印提供者的 API 已被取代。 Microsoft 不建議對第三方列印提供者進行任何投資。 此外,在 v4 列印驅動程式模型的 Windows 8 和較新版本產品上,第三方列印提供者可能不會建立或管理使用 v4 列印驅動程式的佇列。
列印提供者的 GetJobAttributesEx 函式會取得列印作業的相關信息,包括 N-up 和反向列印選項。
語法
BOOL GetJobAttributesEx(
[in] LPWSTR pPrinterName,
[in] LPDEVMODEW pDevmode,
[in] DWORD dwLevel,
[out] LPBYTE pAttributeInfo,
[in] DWORD nSize,
[in] DWORD dwFlags
);
參數
[in] pPrinterName
呼叫端提供的指標,指向包含印表機名稱的NULL終止 Unicode 字串。
[in] pDevmode
呼叫端提供的 DEVMODEW 結構的指標會傳遞至列印處理器或印表機驅動程式。
[in] dwLevel
呼叫端提供的值,指出 pAttributeInfo 所指向的結構類型,如下表所示。 如需詳細資訊,請參閱下面的<備註>一節。
dwLevel 值 | pAttributeInfo 所指向的結構 |
---|---|
1 | ATTRIBUTE_INFO_1 |
2 | ATTRIBUTE_INFO_2 |
3 | ATTRIBUTE_INFO_3 |
4 | ATTRIBUTE_INFO_4 |
[out] pAttributeInfo
呼叫端提供的屬性資訊結構指標, (ATTRIBUTE_INFO_1、 ATTRIBUTE_INFO_2、 ATTRIBUTE_INFO_3或 ATTRIBUTE_INFO_4) ,可接收列印作業的相關信息。
[in] nSize
pAttributeInfo 所指向的緩衝區大小,以位元組為單位。
[in] dwFlags
如果呼叫端設定為 FILL_WITH_DEFAULTS,則多任務緩衝處理程式會將 pAttributeInfo 填入層級 1 到 dwLevel 所指定的層級的預設值。
例如,如果 dwLevel 為 4 且已指定 FILL_WITH_DEFAULTS,pAttributeInfo 將會填入下列預設成員值 ATTRIBUTE_INFO_4:
dwJobNumberOfPagesPerSide = 1
dwDrvNumberOfPagesPerSide = 1
dwNupBorderFlags = 0
dwJobPageOrderFlags = 0
dwDrvPageOrderFlags = 0
dwJobNumberOfCopies = DEVMODEW 的 dmCopies 成員
dwDrvNumberOfCopies = DEVMODEW 的 dmCopies 成員
dwColorOptimization = 0
dmPrintQuality = DEVMODEW 的 dmPrintQuality 成員
dmYResolution = DEVMODEW 的 dmYResolution 成員
dwNupDirection = RIGHT_THEN_DOWN
dwBookletFlags = BOOKLET_EDGE_LEFT
dwDuplexFlags = 0
dwScalingPercentX = 100
dwScalingPercentY = 100
dwJobHandlingFlags = 0
傳回值
如果 GetJobAttributesEx 成功取得列印作業屬性,則會傳回 TRUE ;否則會傳回 FALSE。
備註
此函式會先檢查驅動程式是否支援 dwLevel 所指示的屬性層級。 如果驅動程式不支援該屬性層級,則函式會查詢驅動程式以取得下一個較低層級的支援, (dwLevel - 1) ,並繼續查詢漸進式較低的支援層級,直到取得驅動程式所提供的支援層級為止。 如果 dwFlags 設定為 FILL_WITH_DEFAULTS,則函式會填入不支援層級的預設值。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | winsplp.h (包含 Winsplp.h) |
程式庫 | Spoolss.lib |
Dll | Spoolss.dll |