Scanfunktion (wiamicro.h)

Die Scan-Funktion liest Daten vom Gerät und gibt die Daten an den WIA-Flatbed-Treiber zurück.

Syntax

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

Parameter

[in, out] pScanInfo

Gibt die SCANINFO-Struktur an, die die Einstellungen des Microdrivers darstellt. Dies wird vom WIA-Flatbed-Treiber gespeichert, um sicherzustellen, dass die Einstellungen zwischen dem Microdriver und dem WIA-Flatbed-Treiber synchronisiert werden.

lPhase

Gibt die angeforderte Überprüfungsphase an. Dieser Parameter kann auf einen der folgenden Werte festgelegt werden.

Wert Bedeutung
SCAN_FIRST Dies signalisiert die erste Phase des Scans. Der Microdriver führt drei Aufgaben aus: Er initialisiert das Gerät, verwendet die Daten in der SCANINFO-Struktur , um den Scan einzurichten (z. B. die Auflösung, die Startposition, die Breite und die Höhe auf dem Gerät) und startet den Scan. Von diesem Aufruf müssen Daten zurückgegeben werden. Die Daten müssen in den Puffer eingefügt werden, auf den pBuffer verweist, und der pReceived-Parameter muss auf die Menge der im Puffer abgelegten Daten festgelegt werden.
SCAN_NEXT Dies wird während der Datenübertragung wiederholt aufgerufen. Die Daten sollten in den Puffer eingefügt werden, auf den pBuffer verweist, und der pReceived-Parameter muss auf die Menge der im Puffer abgelegten Daten festgelegt werden.
SCAN_FINISHED Dies wird am Ende des Scans aufgerufen, um den Scanvorgang zu beenden. Es sollten keine Daten übertragen werden. SCAN_FINISHED wird immer aufgerufen, auch wenn der Benutzer die Überprüfung abbricht. Der Microdriver sollte die Übertragung von Daten beenden, und der Scanner sollte zurückgesetzt werden, damit er für die nächste Überprüfung bereit ist. Die von dieser Funktion zurückgegebenen Daten sollten im Rohformat ohne Header vorliegen. Die Daten können entweder gepackt oder planar, ausgerichtet oder nicht ausgerichtet und in RGB- oder BGR-Reihenfolge sein. Legen Sie die Elemente RawDataFormat, RawPixelOrder und bNeedDataAlignment der SCANINFO-Struktur als Reaktion auf den Befehl CMD_INITIALIZE entsprechend fest.

[out] pBuffer

Gibt den Puffer an, der vom Microdriver mit gescannten Daten gefüllt wird. Dieser Puffer wird vom WIA-Flatbed Driver zugeordnet und ist garantiert, dass er mindestens lLength Bytes lang ist.

lLength

Gibt die angeforderte Datenmenge an, die gescannt werden soll. Der Microdriver darf niemals den Puffer überfüllen, auf den pBuffer verweist.

[out] plReceived

Gibt die Menge der tatsächlich in pBuffer gescannten Daten an. Dieser Wert sollte niemals den Wert von lLength überschreiten, kann aber kleiner sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt sie S_OK zurück. Wenn die Funktion fehlschlägt, wird ein COM-Standardfehlercode zurückgegeben.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile wiamicro.h (einschließlich Wiamicro.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe

Weitere Informationen

SCANINFO

WIA-Microdriver-Befehle

WIA Microdriver-Strukturen