IPrintCoreHelperUni::EnumConstrainedOptions 方法 (prcomoem.h)

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

[in] cbSize

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

[in] pszFeatureKeyword

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

[out] pConstrainedOptionList

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

[out] pdwNumOptions

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

傳回值

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

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

規格需求

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

另請參閱

IPrintCoreHelperUni

IPrintCoreHelperUni::EnumOptions