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


Метод IPrintOemUni::CommandCallback (prcomoem.h)

Метод IPrintOemUni::CommandCallback используется для динамического создания команд принтера для принтеров, поддерживаемых Unidrv.

Синтаксис

HRESULT CommandCallback(
        PDEVOBJ pdevobj,
        DWORD   dwCallbackID,
        DWORD   dwCount,
        PDWORD  pdwParams,
  [out] OUT INT *piResult
);

Параметры

pdevobj

Указатель на структуру DEVOBJ вызываемого абонента.

dwCallbackID

Указанное вызывающее значение, представляющее атрибутcallbackID принтера * в файле GP D принтера. (Дополнительные сведения см. в следующем разделе "Примечания".)

dwCount

Вызываемое значение, представляющее количество элементов в массиве, на которое указывает pdwParams. Может быть 0.

pdwParams

Вызывающий указатель на массив параметров размера DWORD, содержащих значения, указанные командами принтера *атрибут Params в файле GPD принтера. (Дополнительные сведения см. в следующем разделе "Примечания".) Может быть значение NULL.

[out] piResult

Получает заданное методом значение результата. См. следующий раздел "Примечания".

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

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

Возвращаемый код Описание
S_OK
Операция завершилась успешно.
E_FAIL
Сбой операции
E_NOTIMPL
Метод не реализован.

Замечания

Метод IPrintOemUni::CommandCallback используется подключаемыми модулями отрисовки для динамического создания команд принтера для принтеров, поддерживаемых Unidrv.

Если вы хотите динамически создать команду принтера, необходимо включить атрибут *CallbackID и, при необходимости, атрибут *Params в записи *Command команды в файле GPD принтера. Дополнительные сведения см. в динамически созданных команд принтера.

Когда Unidrv вызывает метод IPrintOemUni::CommandCallback, он предоставляет значение атрибута *Command entry *CallbackID в качестве параметра dwCallbackID. Он также помещает значение атрибута *Command entry *Params внутри массива DWORD и предоставляет адрес массива в качестве параметра pParams. Массив содержит набор стандартных переменных , определенных Unidrv, значений, а параметр dwCount dwCount указывает количество параметров, содержащихся в массиве. Дополнительные сведения об атрибутах см. в атрибутах команд.

Метод должен использовать значение параметра dwCallbackID, чтобы определить, какая команда должна обрабатываться. Для каждой поддерживаемой команды метод должен учитывать, какие стандартные переменные были указаны атрибутом *Command entry *Params и в каком порядке.

Метод отвечает за создание команды принтера, а затем отправку команды в средство spooler печати путем вызова метода IPrintOemDriverUni::D rvWriteSpoolBuf.

Значение, предоставленное для piResult, всегда должно возвращать ноль, если метод не обрабатывает команду курсора. Для команд курсора перемещения курсора в направлении x или , метод должен вернуть новое положение курсора.

Метод IPrintOemUni::CommandCallback необязателен. Если подключаемый модуль подготовки отрисовки реализует этот метод, подключаемый модуль IPrintOemUni::GetImplementedMethod должен возвращать S_OK при получении "CommandCallback" в качестве входных данных.

Требования

Требование Ценность
целевая платформа Настольный
заголовка prcomoem.h (include Prcomoem.h)