Schreiben von WIA-Elementeigenschaften durch eine Anwendung
Wenn eine WIA-Anwendung in eine WIA-Eigenschaft schreibt (und den in der -Eigenschaft gespeicherten Wert aktualisiert), gibt der WIA-Dienst dem WIA-Minitreiber die Möglichkeit, eingehende Werte zu überprüfen, indem die IWiaMiniDrv::d rvValidateItemProperties-Methode aufgerufen wird. Der WIA-Minitreiber vergleicht die eingehenden Werte mit allen aktuellen Werten, indem die Eigenschaften in seiner eigenen Treiberelementstruktur gelesen werden. Die WIA-Dienstbibliothek stellt Funktionen für den Zugriff auf diese Werte bereit.
Die IWiaMiniDrv::d rvValidateItemProperties-Methode sollte die folgenden Aufgaben ausführen:
Bestimmen Sie den Elementtyp.
Bestimmen Sie, ob eine spezielle Überprüfung für die eingehenden WIA-Eigenschaften ausgeführt werden soll. Um zu bestimmen, welche WIA-Eigenschaften geschrieben werden, kann der WIA-Minitreiber ein Array von PROPSPEC-Strukturen verwenden (die PROPSPEC-Struktur wird in der Microsoft Windows SDK Dokumentation beschrieben). Es wird empfohlen, dass der WIA-Minidriver den Elementtyp vor der Verarbeitung des PROPSPEC-Arrays bestimmt, um die Notwendigkeit zu verringern, das Array bei jedem IWiaMiniDrv::d rvValidateItemProperties-Aufruf zu durchlaufen. Wenn keine besonderen Validierungsanforderungen bestehen oder Sie abhängige Eigenschaften für das Stammelement des Geräts aktualisieren müssen, werden nur Schreibanforderungen an untergeordnete Elementeigenschaften verarbeitet.
Erstellen Sie einen WIA-Eigenschaftskontext, um auf Werte zuzugreifen, die sich während der WIA-Eigenschaftsüberprüfung geändert haben. Dies ist erforderlich, um die abhängigen Eigenschaften für ein WIA-Element zu aktualisieren. Verwenden Sie die Dienstfunktionen wiasCreatePropContext und wiasGetChangedValueXxx .
Aktualisieren Sie abhängige Eigenschaften mithilfe der WIA-Dienstfunktionen, wiasWriteMultiple oder wiasWritePropXxx, einschließlich der Aktualisierung aller gültigen Werte, die sich aufgrund des Festlegens einer Eigenschaft möglicherweise geändert haben. Wenn Ihr WIA-Minitreiber beispielsweise das Festlegen der WIA_IPA_DEPTH-Eigenschaft unterstützt, müssen Sie die gültige Liste der Bittiefen aktualisieren, wenn die Anwendung die eigenschaft WIA_IPA_DATATYPE ändert.
Wenn sich der Wert der WIA_IPA_DATATYPE-Eigenschaft von WIA_DATA_THRESHOLD zu WIA_DATA_COLOR ändert, ändert sich die zugehörige WIA_IPA_DEPTH-Eigenschaft vom Melden einer Ein-Bit-Farbtiefe zu 24 Bit oder 48 Bit.
Rufen Sie die WiasValidateItemProperties-Dienstfunktion auf, damit der WIA-Dienst alle anderen Eigenschaftenanforderungen überprüfen kann. Dies ist ein "Catch-All"-Fall; der WIA-Dienst verfügt über eine integrierte Eigenschaftsüberprüfung.