Función Scan (wiamicro.h)
La función Scan lee los datos del dispositivo y devuelve los datos al controlador WIA Flatbed.
Sintaxis
WIAMICRO_API HRESULT Scan(
[in, out] PSCANINFO pScanInfo,
LONG lPhase,
[out] PBYTE pBuffer,
LONG lLength,
[out] LONG *plReceived
);
Parámetros
[in, out] pScanInfo
Especifica la estructura SCANINFO que representa la configuración del microdriver. El controlador WIA Flatbed almacena esto para garantizar que la configuración entre el microdriver y el controlador WIA Flatbed estén sincronizados.
lPhase
Especifica la fase de examen solicitada. Este parámetro se puede establecer en uno de los siguientes valores.
Valor | Significado |
---|---|
SCAN_FIRST | Esto indica la primera fase del examen. El microdriver realiza tres tareas: inicializa el dispositivo, usa los datos de la estructura SCANINFO para configurar el examen (por ejemplo, establecer la resolución, la posición de inicio, el ancho y el alto en el dispositivo) e inicia el examen. Los datos deben devolverse desde esta llamada. Los datos deben colocarse en el búfer al que apunta pBuffer y el parámetro pReceived debe establecerse en la cantidad de datos colocados en el búfer. |
SCAN_NEXT | Se llamará repetidamente durante la transferencia de datos. Los datos deben colocarse en el búfer al que apunta pBuffer y el parámetro pReceived debe establecerse en la cantidad de datos que se colocan en el búfer. |
SCAN_FINISHED | Se llamará al final del examen para finalizar el proceso de examen. No se debe transferir ningún dato. SCAN_FINISHED siempre se llamará aunque el usuario cancele el examen. El microdriver debe dejar de transferir datos y el analizador debe restablecerse para que esté listo para el siguiente examen. Los datos devueltos desde esta función deben estar en formato sin procesar sin ningún encabezado. Los datos se pueden empaquetar o planear, alinear o no alinear, y en el orden RGB o BGR. Establezca los RawDataFormat , RawPixelOrdery bNeedDataAlignment miembros del SCANINFO en respuesta al comando CMD_INITIALIZE. |
[out] pBuffer
Especifica el búfer que se rellenará con los datos escaneados por el microdriver. Este búfer se asigna mediante el controlador wia plano y se garantiza que tiene al menos lLength bytes de longitud.
lLength
Especifica la cantidad de datos solicitadas que se analizarán. El microdriver nunca debe rellenar el búfer al que apunta pBuffer.
[out] plReceived
Especifica la cantidad de datos que se examinan realmente en pBuffer . Este valor nunca debe superar el valor de lLength, pero puede ser menor.
Valor devuelto
Si la función se ejecuta correctamente, devuelve S_OK. Si se produce un error en la función, devuelve un código de error COM estándar.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | wiamicro.h (incluya Wiamicro.h) |
biblioteca de | NtosKrnl.lib |
DLL de | NtosKrnl.exe |