Freigeben über


Erforderliche Befehle

Die folgenden erforderlichen Befehle müssen von jedem Microdriver implementiert werden.

CMD_GETCAPABILITIES

Wird vom WIA-Flatbed Driver aufgerufen, um Schaltflächenereignisinformationen abzurufen. Drei Elemente der übergebenen VAL-Struktur sollten ausgefüllt werden: lVal sollte auf die Anzahl der Schaltflächen festgelegt werden; pGuid sollte auf ein Array von Ereignis-GUIDs festgelegt werden. ppButtonNames kann optional auf ein WCHAR*-Array festgelegt werden, das die Schaltflächennamen in der gleichen Reihenfolge wie in pGuid enthält (z. B. "Scan-Schaltfläche" oder "Faxschaltfläche"). Wenn ppButtonNames auf NULL festgelegt ist, erstellt der WIA-Flatbed Driver generische Schaltflächennamen. Die Arrays können als Reaktion auf CMD_INITIALIZE zugeordnet und in CMD_UNINITIALIZE freigegeben werden.

CMD_INITIALIZE

Wird vom WIA-Flatbed Driver aufgerufen, um den Microdriver zu initialisieren und Geräte-E/A-Handles auf gültige Werte festzulegen. Dieser Befehl wird an den Microdriver gesendet, wenn der WIA-Dienst die Methode IWiaMiniDrv::d rvInitializeWia auf dem WIA-Flatbed Driver aufruft.

Der WIA-Flatbed Driver erstellt automatisch ein Geräte-E/A-Handle und platziert es im DeviceIOHandles-Arraymitglied der übergebenen SCANINFO-Struktur bei Index 0. Der Microdriver sollte diesen Handle verwenden, wenn er mit dem Gerät kommunizieren muss. Wenn der Microdriver zusätzliche Gerätehandles benötigt (z. B. für die Verwendung mehrerer BULK-USB-Pipes), können sie im DeviceIOHandles-Array bis zu einer maximalen Anzahl von MAX_IO_HANDLES erstellt und gespeichert werden. Der WIA-Flatbed Driver schließt den Handle automatisch bei Index 0, da er dieses Handle während der Initialisierung erstellt hat. Die anderen Handles müssen vom Microdriver als Reaktion auf CMD_UNINITIALIZE geschlossen werden.

Im Rahmen dieses Befehls sollte der Microdriver auch alle Werte in der SCANINFO-Struktur initialisieren. Der Microdriver sollte die Elemente SupportedDataTypes, IntensityRange, ContrastRange, BedWidth und BedHeight der SCANINFO-Struktur festlegen, damit der WIA-Flatbed Driver diese Werte automatisch anhand der gesetzlichen Bereiche für das Gerät überprüfen kann.

CMD_RESETSCANNER

Wird vom WIA-Flatbed Driver aufgerufen, um das Gerät als Antwort auf eine WIA-Dienstanforderung zurückzusetzen. Der Microdriver sollte das Gerät auf den Einschaltzustand festlegen. In Windows Vista verwendet der WIA-Flatbed Driver diesen Befehl nicht. Microdriver sollten diesen Befehl jedoch weiterhin unterstützen, um den korrekten Betrieb unter Windows XP und möglicherweise mit einer zukünftigen Version des WIA-Flatbed-Treibers sicherzustellen, die diesen Befehl verwenden könnte.

CMD_SETDATATYPE

Wird vom WIA-Flatbed Driver aufgerufen, um den Datentyp für den Scan festzulegen. Einer der folgenden Werte wird im lVal-Member der übergebenen VAL-Struktur übergeben:

  • WIA_DATA_THRESHOLD − 1-Bit Schwarz/Weiß

  • WIA_DATA_GRAYSCALE − 8-Bit-Graustufen

  • WIA_DATA_COLOR − 24-Bit-Farbe

Der Microdriver sollte den Wert im DataType-Member der übergebenen SCANINFO-Struktur speichern.

CMD_SETCONTRAST

Wird vom WIA-Flachbetttreiber aufgerufen, um den Kontrastwert für den Scan festzulegen. Der gewünschte Kontrastwert wird im lVal-Element der übergebenen VAL-Struktur übergeben. Der Wert −1000 sollte als niedrigster Kontrastwert, 0 nominal und 1000 der maximale Kontrast des Geräts interpretiert werden. Der Microdriver sollte den Wert im Contrast-Member der übergebenen SCANINFO-Struktur speichern.

CMD_SETINTENSITY

Wird vom WIA-Flachbetttreiber aufgerufen, um den Intensitäts- oder Helligkeitswert für den Scan festzulegen. Der gewünschte Intensitätswert wird im lVal-Member der übergebenen VAL-Struktur übergeben. Der Wert −1000 sollte als niedrigster Helligkeitswert, 0 nominal und 1000 die maximale Helligkeit des Geräts interpretiert werden. Der Microdriver sollte den Wert im Intensitätselement der übergebenen SCANINFO-Struktur speichern.

CMD_SETXRESOLUTION

Wird vom WIA-Flachbetttreiber aufgerufen, um die horizontale Scanauflösung festzulegen. Die gewünschte Auflösung in Pixel wird im lVal-Member der übergebenen VAL-Struktur übergeben. Der Microdriver sollte den Wert im XResolution-Member der übergebenen SCANINFO-Struktur speichern.

CMD_SETYRESOLUTION

Wird vom WIA-Flachbetttreiber aufgerufen, um die vertikale Scanauflösung festzulegen. Die gewünschte Auflösung in Pixel wird im lVal-Member der übergebenen VAL-Struktur übergeben. Der Microdriver sollte den Wert im YResolution-Member der übergebenen SCANINFO-Struktur speichern.

CMD_STI_DEVICERESET

Wird vom WIA-Flatbed Driver aufgerufen, um das Gerät als Reaktion auf eine STI-Anforderung (Still Image) zurückzusetzen. Dieser Befehl wird während der Initialisierung in der Regel nur einmal aufgerufen.

CMD_STI_DIAGNOSTIC

Wird vom WIA-Flatbed Driver aufgerufen, wenn der Benutzer einen Test des Geräts anfordert.

CMD_UNINITIALIZE

Heben Sie die Initialisierung des Microdrivers auf, und schließen Sie die Geräte-E/A-Handles. Der WIA-Flatbed Driver schließt automatisch den E/A-Ziehpunkt des Geräts im DeviceIOHandles-Arraymitglied der SCANINFO-Struktur bei Index 0. Dieser Befehl wird an den Microdriver gesendet, wenn der WIA-Flatbed-Treiber entladen wird.