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 Scanphase 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: Es initialisiert das Gerät, verwendet die Daten in der SCANINFO Struktur, um den Scan einzurichten (z. B. die Auflösung festlegen, die Startposition, die Breite und höhe auf dem Gerät) und startet den Scan. Daten müssen von diesem Aufruf zurückgegeben werden. Daten müssen in den Puffer eingefügt werden, auf den pBuffer- verweist, und der parameter pReceived muss auf die Menge der im Puffer eingefügten Daten festgelegt werden. |
SCAN_NEXT | Dies wird während der Datenübertragung wiederholt aufgerufen. Daten sollten in den Puffer eingefügt werden, auf den pBuffer- verweist, und der pReceived Parameter muss auf die Menge der im Puffer eingefügten 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 den Scan abbricht. Der Microdriver sollte die Übertragung von Daten beenden und der Scanner sollte zurückgesetzt werden, damit er für den nächsten Scan bereit ist. Die von dieser Funktion zurückgegebenen Daten sollten ohne Kopfzeile im unformatierten Format vorliegen. Die Daten können entweder verpackt oder planar, ausgerichtet oder nicht ausgerichtet sein, und in RGB- oder BGR-Reihenfolge. Legen Sie die RawDataFormat-, RawPixelOrder-und bNeedDataAlignment Member der SCANINFO Struktur entsprechend als Reaktion auf den Befehl CMD_INITIALIZE fest. |
[out] pBuffer
Gibt den Puffer an, der vom Microdriver mit gescannten Daten gefüllt wird. Dieser Puffer wird vom WIA Flatbed Driver zugewiesen und ist garantiert mindestens lLength Bytes lang.
lLength
Gibt die angeforderte Datenmenge an, die gescannt wird. Der Microdriver darf den Puffer niemals überfüllen, auf den pBufferverweist.
[out] plReceived
Gibt die Datenmenge an, die tatsächlich in pBuffer-gescannt wurde. Dieser Wert sollte niemals den Wert lLengthüberschreiten, kann aber kleiner sein.
Rückgabewert
Wenn die Funktion erfolgreich ist, wird S_OK zurückgegeben. Wenn die Funktion fehlschlägt, wird ein standardmäßiger COM-Fehlercode zurückgegeben.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | wiamicro.h (include Wiamicro.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |