Unterstützung von WIA-Treiberbefehlen

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

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

Get-Help Bedeutung
WIA_CMD_CHANGE_DOCUMENT Wechseln Sie zum nächsten Dokument (nur für Multidokumentscanner).
WIA_CMD_DELETE_ALL_ITEMS Löschen Sie die Treiberelementstruktur.
WIA_CMD_DIAGNOSTIC Reserviert von Microsoft.
WIA_CMD_SYNCHRONIZE Erstellen Sie die Treiberelementstruktur neu. Dieser Befehl muss von allen Minidrivern unterstützt werden.
WIA_CMD_TAKE_PICTURE Machen Sie ein Foto (nur für Kameras ausgestellt).
WIA_CMD_UNLOAD_DOCUMENT Entladen Sie das aktuelle Dokument (nur für Multidokumentscanner ausgestellt).

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

Gerätebefehlsunterstützung hinzufügen

Um Ihren WIA-Minidriver ordnungsgemäß einzurichten, um Gerätebefehle zu melden, melden Sie ein Array unterstützter Befehle in der IWiaMiniDrv::d rvGetCapabilities-Methode . Eine Beispielimplementierung der IWiaMiniDrv::d rvGetCapabilities-Methode finden Sie unter Hinzufügen von Interruptereignisunterstützung.

Implementieren der IWiaMiniDrv::d rvDeviceCommand-Methode

Der WIA-Dienst ruft die IWiaMiniDrv::d rvDeviceCommand-Methode als Reaktion auf den Aufruf der IWiaItem::D eviceCommand-Methode der Anwendung auf (in der Microsoft Windows SDK-Dokumentation beschrieben). Die IWiaMiniDrv::d rvDeviceCommand-Methode sollte die folgenden Aufgaben ausführen:

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

  2. Verarbeiten Sie die Befehlsanforderung.

Der WIA-Treiber sollte das WIA-Element ermitteln, das den Gerätebefehl empfangen soll, indem er den pWiasContext-Zeiger verwendet. Der WIA-Treiber sollte dann den empfangenen Gerätebefehl für das eingehende WIA-Element verarbeiten. Bei jedem Befehl, der an den WIA-Treiber gesendet wird, der nicht unterstützt wird, sollte ein Fehler mit einem E_INVALIDARG Fehlercode auftreten.

Eine Beispielimplementierung der IWiaMiniDrv::d rvDeviceCommand-Methode finden Sie unter Informieren einer Anwendung von Elementstrukturänderungen.