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 |