Condividi tramite


Funzione Scan (wiamicro.h)

La funzione Scan legge i dati dal dispositivo e restituisce i dati al driver WIA Flatbed.

Sintassi

WIAMICRO_API HRESULT Scan(
  [in, out] PSCANINFO pScanInfo,
            LONG      lPhase,
  [out]     PBYTE     pBuffer,
            LONG      lLength,
  [out]     LONG      *plReceived
);

Parametri

[in, out] pScanInfo

Specifica la struttura SCANINFO che rappresenta le impostazioni del microdriver. Questo viene archiviato dal driver WIA Flatbed per garantire che le impostazioni tra il microdriver e il driver WIA Flatbed siano sincronizzate.

lPhase

Specifica la fase di analisi richiesta. Questo parametro può essere impostato su uno dei valori seguenti.

Valore Significato
SCAN_FIRST Indica la prima fase dell'analisi. Il microdriver esegue tre attività: inizializza il dispositivo, usa i dati nella struttura SCANINFO per configurare l'analisi (ad esempio, impostare la risoluzione, la posizione iniziale, la larghezza e l'altezza nel dispositivo) e avvia l'analisi. I dati devono essere restituiti da questa chiamata. I dati devono essere inseriti nel buffer a cui punta pBuffer e il parametro pReceived deve essere impostato sulla quantità di dati inseriti nel buffer.
SCAN_NEXT Questa operazione verrà chiamata ripetutamente durante il trasferimento dei dati. I dati devono essere inseriti nel buffer a cui punta pBuffer e il parametro pReceived deve essere impostato sulla quantità di dati inseriti nel buffer.
SCAN_FINISHED Verrà chiamato alla fine dell'analisi per terminare il processo di analisi. Non devono essere trasferiti dati. SCAN_FINISHED verrà sempre chiamato anche se l'utente annulla l'analisi. Il microdriver deve interrompere il trasferimento dei dati e lo scanner deve essere reimpostato in modo che sia pronto per l'analisi successiva. I dati restituiti da questa funzione devono essere in formato non elaborato senza intestazione. I dati possono essere compressi o planari, allineati o non allineati e in ordine RGB o BGR. Impostare RawDataFormat, RawPixelOrdere bNeedDataAlignment membri della struttura SCANINFO in modo appropriato in risposta al comando CMD_INITIALIZE.

[out] pBuffer

Specifica il buffer che verrà riempito con i dati analizzati dal microdriver. Questo buffer viene allocato dal driver WIA Flatbed ed è garantito che sia almeno lLength byte di lunghezza.

lLength

Specifica la quantità richiesta di dati che verranno analizzati. Il microdriver non deve mai riempire il buffer a cui punta pBuffer.

[out] plReceived

Specifica la quantità di dati effettivamente analizzati in pBuffer. Questo valore non deve mai superare il valore di lLength, ma può essere minore.

Valore restituito

Se la funzione ha esito positivo, restituisce S_OK. Se la funzione non riesce, restituisce un codice di errore COM standard.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione wiamicro.h (include Wiamicro.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe

Vedere anche

SCANINFO

comandi del microdriver WIA

strutture del microdriver WIA