Compartir a través de


Método IPrintOemUni::CommandCallback (prcomoem.h)

El IPrintOemUni::CommandCallback método se usa para proporcionar comandos de impresora generados dinámicamente para impresoras compatibles con Unidrv.

Sintaxis

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

Parámetros

pdevobj

Puntero proporcionado por el autor de la llamada a una estructura DEVOBJ .

dwCallbackID

Valor proporcionado por el autor de la llamada que representa el atributo *CallbackID del comando de impresora en el archivo GPD de la impresora. (Para obtener más información, vea la sección Comentarios siguientes).

dwCount

Valor proporcionado por el autor de la llamada que representa el número de elementos de la matriz a los que apunta pdwParams. Puede ser 0.

pdwParams

Puntero proporcionado por el autor de la llamada a una matriz de parámetros de tamaño DWORD que contienen valores especificados por los comandos de impresora *Atributo Params en el archivo GPD de la impresora. (Para obtener más información, vea la sección Comentarios siguientes). Puede ser NULL.

[out] piResult

Recibe un valor de resultado proporcionado por el método. Consulte la siguiente sección Comentarios.

Valor devuelto

El método debe devolver uno de los valores siguientes.

Código devuelto Descripción
S_OK
La operación se realizó correctamente.
E_FAIL
Error en la operación
E_NOTIMPL
El método no está implementado.

Comentarios

El IPrintOemUni::CommandCallback método se usa mediante la representación de complementos para generar dinámicamente comandos de impresora, para impresoras compatibles con Unidrv.

Si desea generar dinámicamente un comando de impresora, debe incluir un atributo *CallbackID y, opcionalmente, un atributo *Params , dentro de la entrada *Command del comando en el archivo GPD de la impresora. Para obtener más información, vea Comandos de impresora generados dinámicamente.

Cuando Unidrv llama al IPrintOemUni::CommandCallback método , proporciona el valor del atributo *CallbackID de la entrada *Command como parámetro dwCallbackID . También coloca el valor del atributo *Params de la entrada *Command dentro de una matriz DWORD y proporciona la dirección de la matriz como parámetro pParams . La matriz contiene un conjunto de valores de variables estándar definidos por Unidrv y el parámetro dwCount especifica el número de parámetros contenidos en la matriz. Para obtener más información sobre los atributos, vea Atributos de comando.

El método debe usar el valor del parámetro dwCallbackID para determinar qué comando se va a procesar. Para cada comando admitido, el método debe tener en cuenta cuál, si existe, las variables estándar se han especificado mediante el atributo *Parámetros de la entrada *Command y en qué orden.

El método es responsable de construir un comando de impresora y, a continuación, enviar el comando al administrador de trabajos de impresión llamando al método IPrintOemDriverUni::D rvWriteSpoolBuf .

El valor proporcionado para piResult siempre debe devolver cero a menos que el método esté procesando un comando de cursor. Para los comandos de cursor que mueven el cursor en la x o la dirección, el método debe devolver la nueva posición del cursor.

El IPrintOemUni::CommandCallback método es opcional. Si un complemento de representación implementa este método, el método IPrintOemUni::GetImplementedMethod del complemento debe devolver S_OK cuando recibe "CommandCallback" como entrada.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado prcomoem.h (incluya Prcomoem.h)