Метод 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
Указатель на предоставленный вызывающим буфером, который получает список с разделителями NULL в формате MULTI_SZ, содержащий ключевые слова параметра для ключевого слова компонента, на который указывает pszFeatureKeyword. Этот список завершается двумя пустыми символами.
Задайте для этого параметра значение null просто запрашивать размер (*pcbNeeded) списка параметров без заполнения списка.
[in] cbSize
Указывает размер буфера в байтах, на который указывает pmszOptionList.
[out] pcbNeeded
Указатель на расположение памяти, которое получает фактический размер в байтах списка параметров.
Возвращаемое значение
Этот метод должен возвращать одно из следующих значений.
Возвращаемый код | Описание |
---|---|
|
Метод выполнен успешно. |
|
Значение в cbSize было меньше количества байтов, записываемых в выходной буфер (буфер, на который указывает pmszOptionList).
Метод был вызван с pmszOptionList для параметра NULL. |
|
Строка, на которую указывает pszFeatureKeyword не является распознанной функцией.
Параметр poemuiobj указывает на недопустимый объект контекста. |
|
(только Pscript) Функция драйвера Pscript5 не поддерживается в текущей конфигурации. Функция драйвера Pscript5 поддерживается в текущей конфигурации, но параметры драйвера Pscript5 не перечисляются. |
|
Сбой метода |
Замечания
Этот метод поддерживается только для подключаемых модулей Windows XP Pscript5, а не для подключаемых модулей Unidrv.
Чтобы уменьшить потребность в двух вызовах для доступа к данным, передайте метод выходной буфер фиксированного размера (например, 1 КБ), а затем проверьте возвращаемое значение функции. Если метод возвращает S_OK, буфер уже содержит интересующие данные. Если метод возвращает E_OUTOFMEMORY, значение в *pcbNeed — это размер буфера, необходимый для хранения интересующих данных. Затем вызывающий объект должен выделить буфер этого большего размера и продолжить второй вызов метода.
Дополнительные сведения см. в разделе Using EnumOptions.
Требования
Требование | Ценность |
---|---|
целевая платформа | Настольный |
заголовка | prcomoem.h (include Prcomoem.h) |