Função Scan (wiamicro.h)
A função Scan lê dados do dispositivo e retorna os dados para o driver WIA Flatbed.
Sintaxe
WIAMICRO_API HRESULT Scan(
[in, out] PSCANINFO pScanInfo,
LONG lPhase,
[out] PBYTE pBuffer,
LONG lLength,
[out] LONG *plReceived
);
Parâmetros
[in, out] pScanInfo
Especifica a estrutura SCANINFO que representa as configurações do microdriver. Isso é armazenado pelo driver wia flatbed para garantir que as configurações entre o microdriver e o driver WIA Flatbed sejam sincronizadas.
lPhase
Especifica a fase de verificação solicitada. Esse parâmetro pode ser definido como um dos valores a seguir.
Valor | Significado |
---|---|
SCAN_FIRST | Isso sinaliza a primeira fase da verificação. O microdriver executa três tarefas: inicializa o dispositivo, usa os dados na estrutura SCANINFO para configurar a verificação (por exemplo, definir a resolução, a posição inicial, a largura e a altura no dispositivo) e inicia a verificação. Os dados devem ser retornados dessa chamada. Os dados devem ser colocados no buffer apontado por pBuffer e o parâmetro pReceived deve ser definido como a quantidade de dados colocados no buffer. |
SCAN_NEXT | Isso será chamado repetidamente durante a transferência de dados. Os dados devem ser colocados no buffer apontado pelo pBuffer e o parâmetro pReceived deve ser definido como a quantidade de dados colocados no buffer. |
SCAN_FINISHED | Isso será chamado no final da verificação para encerrar o processo de verificação. Nenhum dado deve ser transferido. SCAN_FINISHED sempre será chamado mesmo se o usuário cancelar a verificação. O microdriver deve parar de transferir dados e o verificador deve ser redefinido para que ele esteja pronto para a próxima verificação. Os dados retornados dessa função devem estar em formato bruto sem nenhum cabeçalho. Os dados podem ser empacotados ou planares, alinhados ou não alinhados e em ordem RGB ou BGR. Defina os membros RawDataFormat, RawPixelOrder e bNeedDataAlignment da estrutura SCANINFO adequadamente em resposta ao comando CMD_INITIALIZE. |
[out] pBuffer
Especifica o buffer que será preenchido com dados verificados pelo microdriver. Esse buffer é alocado pelo Driver Flatbed do WIA e tem a garantia de ter pelo menos bytes lLength de comprimento.
lLength
Especifica a quantidade solicitada de dados que serão verificados. O microdriver nunca deve substituir o buffer apontado por pBuffer.
[out] plReceived
Especifica a quantidade de dados realmente verificados no pBuffer. Esse valor nunca deve exceder o valor de lLength, mas pode ser menor.
Retornar valor
Se a função for bem-sucedida, ela retornará S_OK. Se a função falhar, ela retornará um código de erro COM padrão.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | wiamicro.h (inclua Wiamicro.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |