Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
WIA wird als Out-of-Process-Server (Component Object Model, COM) implementiert, um den stabilen Betrieb von Clientanwendungen sicherzustellen.
WIA verfügt über drei Standard Komponenten: den WIA-Dienst, die WIA-Treiberdienstbibliothek und einen Anbieterbenutzermodustreiber.
Der WIA-Dienst listet Imagegeräte auf, ruft Geräteeigenschaften ab, richtet Ereignisse für Geräte ein und erstellt Geräteobjekte.
Die WIA-Treiberdienstbibliothek implementiert alle Geräte unabhängigen Dienste.
Der Anbieterbenutzermodustreiber ordnet WIA-Eigenschaften und Befehle dem jeweiligen Gerät zu. Es gibt zwei Arten von WIA-Anbieter-Benutzermodustreibern:
Minidriver: Dies ist der häufigste Typ von Anbietertreibern. Es handelt sich um ein COM-Objekt, das die WIA-Minitreiberschnittstellen implementiert. Ein Anbieter kann alle WIA-Funktionen und -Features mit diesem Treibertyp nutzen.
Microdriver: Dieser Treiber ist viel eingeschränkter als ein Minitreiber und daher einfacher zu entwickeln. Es wird hauptsächlich für einfache Scannergeräte verwendet. Dieser Treiber ist kein COM-Objekt. Es handelt sich um eine DLL, die einige Funktionen exportiert. Microdriver können nicht für Kamerageräte verwendet werden.
Das folgende Diagramm veranschaulicht die WIA-Architektur.
Imaging-Anwendungen
Imaging-Anwendungen kommunizieren nicht direkt mit dem Minidriver, sondern kommunizieren mit dem WIA-Dienst über die WIA-Api (Application Programming Interface), um auf Bilder zuzugreifen und Daten von WIA-Geräten zu erhalten. Diese Anwendungen können eine allgemeine, vom System bereitgestellte Benutzeroberfläche oder eine vom Anbieter bereitgestellte Benutzeroberfläche verwenden. Weitere Informationen zur WIA-API für Imageerstellungsanwendungen finden Sie in der Microsoft Windows SDK-Dokumentation.
WIA-Dienst
Der WIA-Dienst ist eine vom System bereitgestellte Komponente, die mit Imaging-Anwendungen und WIA-Minitreibern kommuniziert. Der WIA-Dienst wird in einem separaten Prozess von Anwendungen und im gleichen Prozess wie WIA-Minitreiber ausgeführt. Anwendungen leiten ihre Geräteanforderungen an den WIA-Dienst weiter, der die Anforderungen wiederum über die WIA-Gerätetreiberschnittstelle (DDI) an den entsprechenden Minitreiber weitergibt.
WIA-Treiberdienstbibliothek
Die WIA-Treiberdienstbibliothek ist eine vom System bereitgestellte Komponente, die Hilfsfunktionen für WIA-Minitreiber bereitstellt. Ein Minidriver kann Hilfsfunktionen aufrufen, um Aufgaben wie die folgenden auszuführen:
Initialisieren Sie die ELEMENTstruktur des WIA-Treibers.
Lesen, Schreiben und Überprüfen von Geräteeigenschaften.
Übertragen von Daten.
Alternativ kann ein Minitreiber solche Aufgaben selbst ausführen. Durch die Nutzung der Hilfsfunktionen können Sie die Entwicklungszeit und die Größe eines WIA-Minidrivers reduzieren und gleichzeitig die Flexibilität haben, individuelle Lösungen zu entwickeln.
WIA User-Mode Minidriver
WIA-Minitreiber sind vom Anbieter bereitgestellte Benutzermoduskomponenten, die WIA-Eigenschaftsänderungen und Befehle an ein Imageerstellungsgerät weiterleiten. Ein Minidriver implementiert den WIA DDI, der vom WIA-Dienst aufgerufen wird, um mit dem Minitreiber zu kommunizieren.
Ein WIA-Minitreiber implementiert die standardmäßigen WIA-Minitreiberschnittstellen. Der Minidriver kommuniziert mit dem Imageerstellungsgerät über einen Standardmäßigen Microsoft Windows-Kernelmodustreiber, z. B. den USB-Treiber. Der Minidriver kommuniziert mit dem Kernelmodustreiber, indem die Win32-Funktionen CreateFile, ReadFile, WriteFile und DeviceIoControl aufgerufen werden (siehe Microsoft Windows SDK Dokumentation).
Eine Imageerstellungsanwendung kann keine direkten Aufrufe an den WIA-Minitreiber tätigen. Nur der WIA-Dienst darf den Treiber direkt aufrufen.
Kernel-E/A-Treiber
Treiber für Standbilder im Kernelmodus sind vom System bereitgestellte oder von IHV bereitgestellte Komponenten, die Daten an oder von dem Standbildgerät übermitteln. Ein Kernelmodus-Imagetreiber ist busspezifisch.
Microsoft stellt WDM-basierte, Kernelmodus-Imagetreiber für die USB-, SCSI- und IEEE 1394-Busse bereit. Weitere Informationen finden Sie unter Zugreifen auf Kernel-Mode-Treiber für Standbildgeräte .
Ein Anbieter muss nur dann einen Kernelmodus-Imagetreiber bereitstellen, wenn sein Imagegerät nicht mit von Microsoft bereitgestellten Kernelmodus-E/A-Treibern kompatibel ist.