Метод 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 должен использовать структуру DEVMODEW, на которую указывает pDevmode , а не текущую структуру DEVMODEW по умолчанию или текущую. Если этот метод вызывается из поставщика подключаемого модуля или из IPrintOemPS::D evMode, этот параметр является обязательным. В большинстве других ситуаций параметр должен иметь значение NULL. Когда основной драйвер задает pDevmodeзначение NULL, он изменяет внутреннее состояние, а не внутреннее состояние переданной структуры DEVMODEW. Это необходимо во время таких операций, как полная замена пользовательского интерфейса, когда структура DEVMODEW, возвращаемая DDI, например DrvDocumentPropertySheets, обслуживается модулем пользовательского интерфейса основного драйвера.
[in] cbSize
Размер (в байтах) структуры DEVMODEW, на которую указывает параметр pDevmode .
[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) |