Freigeben über


WIA-Treiberbefehlsunterstützung

Ein WIA-Gerätebefehl ist eine Anforderung, die vom WIA-Dienst (im Auftrag der Imageerstellungsanwendung) an den WIA-Minidriver gesendet wird, und weist ihn an, eine bestimmte Aktion auszuführen.

Im Folgenden finden Sie eine Liste der WIA-Gerätebefehle, die für einen Minidriver ausgegeben werden können:

Command Meaning
WIA_CMD_CHANGE_DOCUMENT Wechseln zum nächsten Dokument (nur für Multidocument-Scanner ausgestellt).
WIA_CMD_DELETE_ALL_ITEMS Löschen Sie die Treiberelementstruktur.
WIA_CMD_DIAGNOSTIC Reserviert von Microsoft.
WIA_CMD_SYNCHRONIZE Erstellen Sie die Treiberelementstruktur neu. Alle Minidriver müssen diesen Befehl unterstützen.
WIA_CMD_TAKE_PICTURE Aufnehmen eines Bilds (nur für Kameras ausgestellt).
WIA_CMD_UNLOAD_DOCUMENT Entladen Sie das aktuelle Dokument (nur für Multidocument-Scanner ausgestellt).

Die WIA_CMD_XXX Befehle werden in der Microsoft Windows SDK-Dokumentation beschrieben. Sie können eine eigene benutzerdefinierte Liste von Befehlen einschließen.

Hinzufügen der Gerätebefehlsunterstützung

To properly set up your WIA minidriver to report device commands, report an array of supported commands in the IWiaMiniDrv::drvGetCapabilities method. For an example implementation of the IWiaMiniDrv::drvGetCapabilities method, see Adding Interrupt Event Support.

Implementieren der IWiaMiniDrv::d rvDeviceCommand-Methode

The WIA service calls the IWiaMiniDrv::drvDeviceCommand method in response to the application's call to the IWiaItem::DeviceCommand method (described in the Microsoft Windows SDK documentation). The IWiaMiniDrv::drvDeviceCommand method should perform the following tasks:

  1. Bestimmen Sie, ob der gesendete Befehl ein unterstützter Befehl ist.

  2. Verarbeiten sie die Befehlsanforderung.

The WIA driver should determine the WIA item that is to receive the device command by using the pWiasContext pointer. Der WIA-Treiber sollte dann den empfangenen Gerätebefehl verarbeiten, der auf das eingehende WIA-Element ausgerichtet ist. Alle befehle, die an den WIA-Treiber gesendet werden, der nicht unterstützt wird, sollten mit einem E_INVALIDARG Fehlercode fehlgeschlagen sein.

For an example implementation of the IWiaMiniDrv::drvDeviceCommand method, see Informing an Application of Item Tree Changes.