Optionale Befehle
Die folgenden Befehle können vom Microdriver implementiert werden, sind dafür aber nicht erforderlich.
CMD_GETSUPPORTEDFILEFORMATS
Wird vom WIA-Flatbed Driver aufgerufen, um die Anzahl zusätzlicher Dateiformate abzurufen. Zwei Elemente der übergebenen VAL-Struktur sollten ausgefüllt werden: lVal sollte auf die Anzahl zusätzlicher Dateiformate festgelegt werden; pGuid sollte auf ein Array von Bildformat-GUIDs verweisen. Der für dieses Array zugewiesene Arbeitsspeicher gehört dem Microdriver und sollte nur von diesem freigegeben werden.
Bildformate werden in wiadef.h aufgeführt oder können als benutzerdefinierte Formate definiert werden. Beachten Sie, dass der WIA-Flatbed Driver diese automatisch hinzufügt, da die Formate BMP (Datei) und MEMORYBMP (Arbeitsspeicher) erforderlich sind. Der Microdriver sollte sie nicht der erweiterten Liste hinzufügen.
Dieser Befehl ist optional, es sei denn, das Gerät kann zusätzliche Dateiformate unterstützen.
CMD_GETSUPPORTEDMEMORYFORMATS
Wird vom WIA-Flatbed Driver aufgerufen, um die Anzahl zusätzlicher Speicherformate abzurufen. Zwei Elemente der übergebenen VAL-Struktur sollten ausgefüllt werden: lVal sollte auf die Anzahl zusätzlicher Speicherformate festgelegt werden; pGuid sollte auf ein Array von Bildformat-GUIDs verweisen. Der für dieses Array zugewiesene Arbeitsspeicher gehört dem Microdriver und sollte nur von diesem freigegeben werden.
Bildformate werden in wiadef.h aufgeführt oder können als benutzerdefinierte Formate definiert werden. Beachten Sie, dass der WIA-Flatbed Driver diese automatisch hinzufügt, da die Formate BMP (Datei) und MEMORYBMP (Arbeitsspeicher) erforderlich sind. Der Microdriver sollte sie nicht der erweiterten Liste hinzufügen.
Dieser Befehl ist optional, es sei denn, das Gerät kann zusätzliche Speicherformate unterstützen.
CMD_SETFORMAT
Der Klassentreiber sendet diesen Befehl, um das aktuelle Format festzulegen, wie von der Anwendung angefordert. Das pGuid-Element der VAL-Struktur enthält das Bildformat GUID. Der Microdriver sollte diese Bildformat-ID in seinem privaten Kontext speichern, um die aktuelle Bildformateinstellung nachzuverfolgen.
Microdriver müssen diesen Befehl nur unterstützen, wenn sie erweiterte Formate melden. Da der Klassentreiber keine Möglichkeit hat, Daten in erweiterten Formaten zu überprüfen, liegt es in der Verantwortung des Microdrivers, die richtigen Daten zu generieren. Beim Übertragen von Daten in einem erweiterten Format sollten alle Daten übertragen werden, einschließlich Bildheader. Wenn Ihr Treiber beispielsweise meldet, dass er das JPEG-Format unterstützt, müssen alle JPEG-Dateien übertragen werden, nicht nur die Bildbits.
Der Klassentreiber besitzt den Speicher, auf den das pGuid-Element der VAL-Struktur verweist, sodass der Mikrodriver ihn nicht freigeben darf.
Beachten Sie, dass dieser Befehl keine Auswirkungen auf die Art und Weise hat, wie ein Microdriver auf Aufrufe der Scan-Funktion reagiert. Wie üblich muss der Microdriver die Werte der Parameter lPhase, pScanInfo und lLength dieser Funktion überprüfen und Daten in den Puffern platzieren, auf die die pBuffer - und pReceived-Parameter verweisen.
Treiber, die nur Dateien im WiaImgFmt_BMP- und WiaImgFmt_MEMORYBMP-Format (standardformate für Microdriver) unterstützen, können den befehl CMD_SETFORMAT empfangen. Diese Treiber können diesen Befehl ignorieren, da der Klassentreiber alle Datenübertragungen mit den Standardformaten verarbeitet.
CMD_SETSCANMODE
Wird vom WIA-Flatbed Driver aufgerufen, um den Scanmodus - Vorschau oder Final - des Geräts des Microdrivers festzulegen. Das lVal-Element der VAL-Struktur enthält einen der folgenden Werte, die beide in wiamicro.h definiert sind:
SCANMODE_PREVIEWSCAN − Vorschauscanmodus
SCANMODE_FINALSCAN − Endgültiger Scanmodus
CMD_SETSTIDEVICEHKEY
Wird vom WIA-Flatbed Driver aufgerufen, um dem Microdriver das Lesen von Registrierungseinträgen im Abschnitt "Installierte Registrierung" zu ermöglichen. Dieser Befehl stellt den installierten Registrierungs-HKEY des STI-Geräts für den Microdriver bereit, sodass es auf private Registrierungswerte für das Gerät zugreifen kann. Das pHandle-Element der VAL-Struktur enthält einen Zeiger auf den HKEY, der dem WIA-Flatbed Driver während der IStiUSD::Initialize-Methode von STI zugewiesen wird. Dies ist der oberste HKEY des Abschnitts "Installiertes Gerät". Der DeviceData-Schlüssel kann direkt mit diesem HKEY geöffnet werden. Weitere Informationen finden Sie unter INF-Dateien für WIA-Geräte .
Hinweis
Dieser Schlüssel wird nur vom WIA-Flatbed Driver geöffnet und geschlossen. Es ist auch nur während dieses Befehls und CMD_INITIALIZE gültig (siehe Erforderliche Befehle). Nachdem diese Befehle zurückgegeben wurden, ist der Schlüssel nicht mehr gültig. Der HKEY-Wert darf nicht zwischengespeichert werden.