Compartilhar via


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

O IPrintOemUni::CommandCallback método é usado para fornecer comandos de impressora gerados dinamicamente para impressoras com suporte Unidrv.

Sintaxe

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

Parâmetros

pdevobj

Ponteiro fornecido pelo chamador para uma estrutura DEVOBJ .

dwCallbackID

Valor fornecido pelo chamador que representa o atributo *CallbackID do comando da impressora no arquivo GPD da impressora. (Para obter mais informações, consulte a seção Comentários a seguir.)

dwCount

Valor fornecido pelo chamador que representa o número de elementos na matriz apontada por pdwParams. Pode ser 0.

pdwParams

Ponteiro fornecido pelo chamador para uma matriz de parâmetros do tamanho DWORD que contêm valores especificados pelos comandos da impressora *Atributo Params no arquivo GPD da impressora. (Para obter mais informações, consulte a seção Comentários a seguir.) Pode ser NULL.

[out] piResult

Recebe um valor de resultado fornecido pelo método. Consulte a seção Comentários a seguir.

Retornar valor

O método deve retornar um dos valores a seguir.

Código de retorno Descrição
S_OK
A operação foi realizada com êxito.
E_FAIL
Falha na operação
E_NOTIMPL
O método não está implementado.

Comentários

O IPrintOemUni::CommandCallback método é usado pela renderização de plug-ins para gerar comandos de impressora dinamicamente para impressoras compatíveis com Unidrv.

Se você quiser gerar dinamicamente um comando de impressora, deverá incluir um atributo *CallbackID e, opcionalmente, um atributo *Params , dentro da entrada *Command do comando no arquivo GPD da impressora. Para obter mais informações, consulte Comandos de impressora gerados dinamicamente.

Quando Unidrv chama o IPrintOemUni::CommandCallback método , ele fornece o valor do atributo *CallbackID da entrada de comando como o parâmetro dwCallbackID . Ele também coloca o valor do atributo *Params da entrada *Command dentro de uma matriz DWORD e fornece o endereço da matriz como o parâmetro pParams . A matriz contém um conjunto de valores de variáveis padrão definidos por Unidrv e o parâmetro dwCount especifica o número de parâmetros contidos na matriz. Para obter mais informações sobre os atributos, consulte Atributos de comando.

O método deve usar o valor do parâmetro dwCallbackID para determinar qual comando processar. Para cada comando com suporte, o método deve estar ciente de quais variáveis padrão foram especificadas pelo atributo *Params da entrada *Command e em qual ordem.

O método é responsável por construir um comando de impressora e, em seguida, enviar o comando para o spooler de impressão chamando o método IPrintOemDriverUni::D rvWriteSpoolBuf .

O valor fornecido para piResult sempre deve retornar zero, a menos que o método esteja processando um comando de cursor. Para comandos de cursor que movem o cursor na direção x ou , o método deve retornar a nova posição do cursor.

O IPrintOemUni::CommandCallback método é opcional. Se um plug-in de renderização implementar esse método, o método IPrintOemUni::GetImplementedMethod do plug-in deverá retornar S_OK quando receber "CommandCallback" como entrada.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho prcomoem.h (inclua Prcomoem.h)