Метод IPrintOemUni::EnablePDEV (prcomoem.h)
Метод IPrintOemUni::EnablePDEV
позволяет подключаемый модуль отрисовки для Unidrv создать собственную структуру PDEV.
Синтаксис
HRESULT EnablePDEV(
PDEVOBJ pdevobj,
PWSTR pPrinterName,
ULONG cPatterns,
HSURF *phsurfPatterns,
ULONG cjGdiInfo,
GDIINFO *pGdiInfo,
ULONG cjDevInfo,
DEVINFO *pDevInfo,
DRVENABLEDATA *pded,
[out] OUT PDEVOEM *pDevOem
);
Параметры
pdevobj
Указатель на структуру DEVOBJ вызываемого абонента.
pPrinterName
Вызывающий указатель на текстовую строку, представляющую логический адрес принтера.
cPatterns
Вызываемое значение, представляющее количество дескрипторов поверхности, типизированных HSURF, содержащихся в буфере, на которые указывает phsurfPatterns.
phsurfPatterns
Вызывающий указатель на буфер, который достаточно велик, чтобы содержать cPatterns число дескрипторов поверхности типа HSURF. Дескриптор представляет шаблоны заливки поверхности.
cjGdiInfo
Вызываемое значение, представляющее размер структуры, на которую указывает pGdiInfo.
pGdiInfo
cjDevInfo
Вызываемое значение, представляющее размер структуры, на которую указывает pDevInfo.
pDevInfo
Вызывающий указатель на структуру DEVINFO.
pded
Вызывающий указатель на структуру DRVENABLEDATA, содержащую адреса графических функций DDI драйвера принтера. Дополнительные сведения см. в следующем разделе "Примечания".
[out] pDevOem
Получает указатель, предоставленный методом, на частную структуру PDEV. (Дополнительные сведения см. в следующем разделе "Примечания".)
Возвращаемое значение
Метод должен возвращать одно из следующих значений.
Возвращаемый код | Описание |
---|---|
|
Операция завершилась успешно. |
|
Сбой операции |
Если операция завершается ошибкой, метод должен вызвать SetLastError, чтобы задать код ошибки.
Замечания
Подключаемый модуль отрисовки для Unidrv должен реализовать метод IPrintOemUni::EnablePDEV
.
Метод IPrintOemUni::EnablePDEV
выполняет те же типы операций, что и функция DrvEnablePDEV, экспортируемая библиотекой DLL графики принтера. Его целью является разрешение подключаемого модуля отрисовки для создания собственной структуры PDEV. (Дополнительные сведения о структурах PDEV см. в разделе Настраиваемые структуры PDEV.)
Если вы предоставляете подключаемый модуль отрисовки, который экспортирует метод IPrintOemUni::EnablePDEV
, графический dll-файл принтера Undrv вызывает метод из функции DrvEnablePDEV.
Метод IPrintOemUni::EnablePDEV
должен выделить экземпляр своей частной структуры PDEV, инициализировать его и вернуть его адрес в качестве параметра pDevOem метода. Другие методы подключаемого модуля получают адрес как элемент pdevOEM структуры DEVOBJ.
Элемент pdevOEM структуры DEVOBJ не используется с методом IPrintOemUni::EnablePDEV
.
Структуры, на которые указывает phsurfPatterns, pGdiInfo, а значения параметров pDevInfo совпадают со значениями параметров, которые получает функция Unidrv DrvEnablePD EV. Подключаемый модуль отрисовки может изменить содержимое структуры по мере необходимости. Он может предоставлять шаблоны заливки поверхности путем получения дескрипторов поверхности типа HSURF и размещения их в буфере, на который указывает phsurfPatterns. Типы шаблонов заливки и порядок дескрипторов перечислены в описании DrvEnablePDEV.
Структура DRVENABLEDATA, на которую указывает pded содержит адреса функций DDI графики, предоставленных библиотекой DLL принтера Unidrv. Вы можете предоставить настраиваемые функции перехватчика в подключаемом модуле для этих графических функций DDI. Содержимое структуры DRVENABLEDATA позволяет настраиваемым функциям перехватчика возвращать графические функции DDI драйвера. Дополнительные сведения см. в разделе Настраиваемые функции DDI графики.
Требования
Требование | Ценность |
---|---|
целевая платформа | Настольный |
заголовка | prcomoem.h (include Prcomoem.h) |