IPrintCoreHelperPS::EnumConstrainedOptions 方法 (prcomoem.h)

IPrintCoreHelperPS::EnumConstrainedOptions 方法會根據目前的設定,提供受特定功能限制的所有選項清單。

語法

HRESULT EnumConstrainedOptions(
  [in, optional] IN const DEVMODE *pDevmode,
  [in]           IN DWORD         cbSize,
  [in]           IN PCSTR         pszFeatureKeyword,
  [out]          OUT PCSTR * []   pConstrainedOptionList,
  [out]          OUT DWORD        *pdwNumOptions
);

參數

[in, optional] pDevmode

DEVMODEW 結構的指標。 如果提供此指標, IPrintCoreHelperPS::EnumConstrainedOptions 應該使用 pDevmode 所指向的 DEVMODEW 結構,而不是預設或目前的 DEVMODEW 結構。 如果從外掛程式提供者或 IPrintOemPS::D evMode 呼叫此方法,則需要此參數。 在其他大部分情況下,參數應該是 NULL。 當核心驅動程式將 pDevmode 設定為 NULL 時,它會修改其內部狀態,而不是傳入 DEVMODEW 結構的內部狀態。 這在完整UI取代等作業期間是必要的,其中 DDI 所傳回的DEVMODEW結構,例如 DrvDocumentPropertySheets,正由核心驅動程式的UI模組提供服務。

[in] cbSize

pDevmode 參數所指向之 DEVMODEW 結構的大小,以位元組為單位。

[in] pszFeatureKeyword

包含功能名稱的 ANSI 字元字串。

[out] pConstrainedOptionList

ANSI 字元字串數位的指標。 當 IPrintCoreHelperPS::EnumConstrainedOptions 傳回時,這些字串會包含指定功能內受限制之所有選項的名稱。 呼叫端不負責釋放陣列或數位中的個別字串。

[out] pdwNumOptions

接收 pConstrainedOptionList 參數所指向之陣列中限制選項數目的變數指標。

傳回值

IPrintCoreHelperPS::EnumConstrainedOptions 應該會傳回下列其中一個值。

傳回碼 描述
S_OK 已針對指定的功能設定限制選項。
E_FAIL 呼叫端提供導致無效要求的資訊,例如不存在之功能的要求。
E_INVALIDARG 一或多個自變數無效。 這個值可能表示不支援此功能。
E_OUTOFMEMORY 記憶體不足,無法建立選項陣列,或核心驅動程式因為記憶體不足而無法服務要求。
此處 未列出E_UNEXPECTED或其他失敗 發生未預期的狀況。 核心驅動程式可能處於無效狀態。 呼叫端應該會結束失敗碼。

規格需求

需求
目標平台 桌面
標頭 prcomoem.h (包含 Prcomoem.h)

另請參閱

IPrintCoreHelperPS

IPrintCoreHelperPS::EnumOptions