Partilhar via


Comandos necessários

O seguinte conjunto de comandos necessários deve ser implementado por cada microdriver.

CMD_GETCAPABILITIES

Chamado pelo Driver de Flatbed wia para obter informações de evento de botão. Três membros da estrutura val passada devem ser preenchidos: lVal deve ser definido como o número de botões; pGuid deve ser definido como uma matriz de GUIDs de evento; PpButtonNames podem, opcionalmente, ser definidos como uma matriz WCHAR* que contém os nomes de botão na mesma ordem em que estão em pGuid (por exemplo, "Botão Digitalizar" ou "Botão Fax"). Se ppButtonNames estiver definido como NULL, o Driver de Flatbed wia criará nomes de botão genéricos. As matrizes podem ser alocadas em resposta a CMD_INITIALIZE e liberadas em CMD_UNINITIALIZE.

CMD_INITIALIZE

Chamado pelo Driver de Flatbed do WIA para inicializar o microdriver e definir identificadores de E/S do dispositivo como valores válidos. Esse comando será enviado para o microdriver quando o serviço WIA chamar o método IWiaMiniDrv::d rvInitializeWia no Driver flatbed do WIA.

O Driver de Flatbed wia criará automaticamente um identificador de E/S de dispositivo e o colocará no membro da matriz DeviceIOHandles da estrutura SCANINFO passada no índice 0. O microdriver deve usar esse identificador quando precisar se comunicar com o dispositivo. Se o microdriver precisar de identificadores de dispositivo adicionais (por exemplo, para usar vários pipes USB em massa), eles poderão ser criados e armazenados na matriz DeviceIOHandles até um número máximo de MAX_IO_HANDLES. O Driver de Flatbed wia fechará automaticamente o identificador no índice 0, pois ele criou esse identificador durante a inicialização. Os outros identificadores devem ser fechados pelo microdriver em resposta a CMD_UNINITIALIZE.

Como parte desse comando, o microdriver também deve inicializar todos os valores na estrutura SCANINFO . O microdriver deve definir os membros SupportedDataTypes, IntensityRange, ContrastRange, BedWidth e BedHeight da estrutura SCANINFO, para que o Driver de Flatbed wia possa validar automaticamente esses valores em relação aos intervalos legais para o dispositivo.

CMD_RESETSCANNER

Chamado pelo Driver de Flatbed wia para redefinir o dispositivo em resposta a uma solicitação de serviço WIA. O microdriver deve definir o dispositivo como seu estado de ativação. No Windows Vista, o WiA Flatbed Driver não usa esse comando. No entanto, os microdrivers devem continuar a dar suporte a esse comando para garantir a operação correta no Windows XP e, possivelmente, com uma versão futura do Driver Flatbed wia que pode usar esse comando.

CMD_SETDATATYPE

Chamado pelo Driver de Flatbed wia para definir o tipo de dados para a verificação. Um dos seguintes valores é passado no membro lVal da estrutura val passada:

  • WIA_DATA_THRESHOLD – preto/branco de 1 bit

  • WIA_DATA_GRAYSCALE – escala de cinza de 8 bits

  • WIA_DATA_COLOR – cor de 24 bits

O microdriver deve armazenar o valor no membro DataType da estrutura SCANINFO passada.

CMD_SETCONTRAST

Chamado pelo Driver de Flatbed wia para definir o valor de contraste para a verificação. O valor de contraste desejado é passado no membro lVal da estrutura val passada. O valor −1000 deve ser interpretado como o menor valor de contraste, 0 nominal e 1000 o contraste máximo do dispositivo. O microdriver deve armazenar o valor no membro Contrast da estrutura SCANINFO passada.

CMD_SETINTENSITY

Chamado pelo Driver de Flatbed wia para definir o valor de intensidade ou brilho para a verificação. O valor de intensidade desejado é passado no membro lVal da estrutura val passada. O valor −1000 deve ser interpretado como o menor valor de brilho, 0 nominal e 1000 o brilho máximo do dispositivo. O microdriver deve armazenar o valor no membro Intensity da estrutura SCANINFO passada.

CMD_SETXRESOLUTION

Chamado pelo Driver de Flatbed wia para definir a resolução de verificação horizontal. A resolução desejada em pixels é passada no membro lVal da estrutura val passada. O microdriver deve armazenar o valor no membro XResolution da estrutura SCANINFO passada.

CMD_SETYRESOLUTION

Chamado pelo Driver de Flatbed wia para definir a resolução de verificação vertical. A resolução desejada em pixels é passada no membro lVal da estrutura val passada. O microdriver deve armazenar o valor no membro YResolution da estrutura SCANINFO passada.

CMD_STI_DEVICERESET

Chamado pelo Driver de Flatbed do WIA para redefinir o dispositivo em resposta a uma solicitação de Imagem Parada (STI). Esse comando normalmente é chamado apenas uma vez, durante a inicialização.

CMD_STI_DIAGNOSTIC

Chamado pelo WiA Flatbed Driver quando o usuário solicita um teste do dispositivo.

CMD_UNINITIALIZE

Não inicialize o microdriver e feche os identificadores de E/S do dispositivo. O WiA Flatbed Driver fechará automaticamente o identificador de E/S do dispositivo no membro da matriz DeviceIOHandles da estrutura SCANINFO , no índice 0. Esse comando será enviado para o microdriver quando o driver wia flatbed estiver descarregando.