Поделиться через


Метод IPrintCoreHelperUni::GetOption (prcomoem.h)

Метод IPrintCoreHelperUni::GetOption получает указанный параметр для заданного компонента.

Синтаксис

HRESULT GetOption(
  [in, optional] const DEVMODE *pDevmode,
  [in]           DWORD         cbSize,
  [in]           PCSTR         pszFeatureRequested,
  [out]          PCSTR         *ppszOption
);

Параметры

[in, optional] pDevmode

Указатель на структуру DEVMODEW . Если указан этот указатель, следует использовать структуру DEVMODEW, IPrintCoreHelperUni::GetOption на которую указывает pDevmode , вместо структуры DEVMODEW по умолчанию или текущей. Если этот метод вызывается из поставщика подключаемого модуля или из IPrintOemUni::D evMode, этот параметр является обязательным. В большинстве других ситуаций параметр должен иметь значение NULL. Когда основной драйвер устанавливает для pDevmodeзначение NULL, он изменяет его внутреннее состояние, а не переданную в DEVMODEW структуру. Это необходимо при выполнении таких операций, как полная замена пользовательского интерфейса, когда структура DEVMODEW, возвращаемая DDI, например DrvDocumentPropertySheets, обслуживается модулем пользовательского интерфейса основного драйвера.

[in] cbSize

Размер структуры DEVMODEW в байтах, на которую указывает параметр pDevmode .

[in] pszFeatureRequested

Указатель на строку ANSI, содержащую имя компонента, которое отображается в файле GPD.

[out] ppszOption

Указатель на переменную, содержащую адрес строки ANSI. При IPrintCoreHelperUni::GetOption возврате строка должна содержать ключевое слово для выбранного в данный момент параметра, который отображается в файле конфигурации. Вызывающий объект не должен изменять эту строку и не должен освобождать память, связанную с этой строкой.

Возвращаемое значение

IPrintCoreHelperUni::GetOption значение должно возвращать одно из следующих значений.

Код возврата Описание
S_OK
Метод считывает параметр для указанного компонента.
E_FAIL
Вызывающий объект предоставил сведения, которые привели к недопустимому запросу. Например, запрошенная функция не существует.
E_INVALIDARG
Аргументы были недопустимыми. Это значение может означать, что функция не поддерживается или для нее было запрошено слишком много параметров.
E_OUTOFMEMORY
Драйверу ядра не удалось обслужить запрос из-за нехватки памяти.
E_UNEXPECTED или другие коды возврата, не перечисленные здесь
Основной драйвер, кажется, в недопустимом состоянии. Вызывающий объект должен вернуть код сбоя.

Комментарии

IPrintCoreHelperUni::GetOption не может использоваться для функций, позволяющих одновременно задавать несколько параметров.

Ключевые слова функций определяются в файле GPD. Кроме того, драйвер Unidrv поддерживает несколько зарезервированных ключевых слов для параметров, которые хранятся в его частной структуре DEVMODEW . Список функций Unidrv см. в разделе Сопоставление ключевых слов.

Вызывающий объект не должен освобождать строку, на которую указывает ppszOption , и не должен каким-либо образом изменять строку.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть prcomoem.h (включая Prcomoem.h)

См. также раздел

IPrintCoreHelperUni

IPrintCoreHelperUni::SetOptions