IPrintCoreUI2::EnumOptions 方法 (prcomoem.h)
方法 IPrintCoreUI2::EnumOptions
會列舉特定功能的可用選項。
語法
HRESULT EnumOptions(
[in] POEMUIOBJ poemuiobj,
[in] DWORD dwFlags,
[in] PCSTR pszFeatureKeyword,
[out] PZZSTR pmszOptionList,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
參數
[in] poemuiobj
目前內容的指標, OEMUIOBJ 結構。
[in] dwFlags
為保留,且必須設定為零。
[in] pszFeatureKeyword
呼叫端提供的緩衝區指標,其中包含 ASCII 字串,指定要求其選項的功能關鍵詞。
[out] pmszOptionList
呼叫端提供的緩衝區指標,該緩衝區會以MULTI_SZ格式接收 NULL 分隔的清單,其中包含 pszFeatureKeyword 所指向之功能關鍵詞的選項關鍵詞。 此清單會以兩個 Null 字元終止。
將此參數設定為 NULL ,只要查詢選項清單的大小 (*) *) ,而不需要填入清單。
[in] cbSize
指定 pmszOptionList 所指向緩衝區的大小,以位元組為單位。
[out] pcbNeeded
記憶體位置的指標,該位置會接收選項清單的實際大小,以位元組為單位。
傳回值
這個方法必須傳回下列其中一個值。
傳回碼 | 描述 |
---|---|
|
此方法已成功。 |
|
cbSize 中的值小於要寫入輸出緩衝區的位元元組數目, (pmszOptionList 所指向的緩衝區) 。
方法已呼叫, 並將 pmszOptionList 設定為 NULL。 |
|
pszFeatureKeyword 所指向的字串不是可辨識的功能。
poemuiobj 參數指向無效的內容物件。 |
|
僅限 Pscript () 目前設定不支援 Pscript5 驅動程式功能。 目前設定支援 Pscript5 驅動程式功能,但 Pscript5 驅動程式功能的選項無法列舉。 |
|
方法失敗 |
備註
只有 Windows XP Pscript5 外掛程式才支援這個方法,不適用於 Unidrv 外掛程式。
若要減少每個數據存取兩次呼叫的需求,請將固定大小的輸出緩衝區傳遞 (1 KB,例如) ,然後檢查函式傳回值。 如果方法傳回S_OK,則緩衝區已經包含感興趣的數據。 如果方法傳回E_OUTOFMEMORY,則 *azureNeeded 中的值是保存感興趣的數據所需的緩衝區大小。 接著,呼叫端應該配置該較大大小的緩衝區,然後繼續進行方法的第二次呼叫。
如需詳細資訊,請參閱 使用 EnumOptions。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | prcomoem.h (包含 Prcomoem.h) |