Udostępnij przez


Opcjonalne polecenia

Następujące polecenia można zaimplementować w mikrodriverze, ale nie jest to wymagane.

CMD_GETSUPPORTEDFILEFORMATS

Wywoływana przez sterownik WIA Flatbed w celu uzyskania liczby dodatkowych formatów plików. Należy wypełnić dwie elementy składowe przekazanej struktury VAL : lVal należy ustawić na liczbę dodatkowych formatów plików; pGuid powinien wskazywać tablicę identyfikatorów GUID formatu obrazu. Pamięć przydzielona dla tej tablicy jest własnością mikrodrivera i powinna zostać zwolniona tylko przez niego.

Formaty obrazów są wymienione w pliku wiadef.h lub można je zdefiniować jako formaty niestandardowe. Należy pamiętać, że ponieważ formaty BMP (plik) i MEMORYBMP (pamięć) są wymagane, sterownik WIA Flatbed automatycznie je dodaje. Mikrokontroler nie powinien dodawać ich do swojej rozszerzonej listy.

To polecenie jest opcjonalne, chyba że urządzenie może obsługiwać dodatkowe formaty plików.

CMD_GETSUPPORTEDMEMORYFORMATS

Wywoływana przez sterownik WIA Flatbed w celu uzyskania liczby dodatkowych formatów pamięci. Należy wypełnić dwie elementy składowe przekazanej struktury VAL : lVal należy ustawić na liczbę dodatkowych formatów pamięci; pGuid powinien wskazywać tablicę identyfikatorów GUID formatu obrazu. Pamięć przydzielona dla tej tablicy jest własnością mikrodrivera i powinna być zwolniona tylko przez niego.

Formaty obrazów są wymienione w pliku wiadef.h lub można je zdefiniować jako formaty niestandardowe. Należy pamiętać, że ponieważ formaty BMP (plik) i MEMORYBMP (pamięć) są wymagane, sterownik WIA Flatbed automatycznie je dodaje. Mikrodriver nie powinien dodawać ich do swojej rozszerzonej listy.

To polecenie jest opcjonalne, chyba że urządzenie może obsługiwać dodatkowe formaty pamięci.

CMD_SETFORMAT

Sterownik klasy wysyła to polecenie, aby ustawić bieżący format zgodnie z żądaniem aplikacji. Element członek pGuid struktury VAL zawiera GUID formatu obrazu. Mikrosterownik powinien zapisać ten identyfikator formatu obrazu w kontekście prywatnym, aby zachować bieżące ustawienie formatu obrazu.

Mikrodrivery są wymagane do obsługi tego polecenia tylko wtedy, gdy zgłaszają rozszerzone formaty. Ponieważ sterownik klasy nie ma możliwości sprawdzania poprawności danych w formatach rozszerzonych, jest to odpowiedzialność mikrodrivera za generowanie odpowiednich danych. Podczas przesyłania danych w formacie rozszerzonym wszystkie dane powinny być przesyłane, w tym nagłówki obrazów. Jeśli na przykład sterownik zgłasza, że obsługuje format JPEG, cały plik JPEG musi zostać przeniesiony, a nie tylko bity obrazu.

Sterownik klasy zarządza pamięcią wskazywaną przez element członkowski pGuid struktury VAL, więc mikrodriver nie powinien go zwalniać.

Należy pamiętać, że to polecenie nie ma wpływu na sposób, w jaki mikrodriver reaguje na wywołania funkcji Scan . Jak zwykle mikrodriver musi sprawdzać wartości parametrów lPhase, pScanInfo i lLength tej funkcji oraz umieszczać dane w buforach wskazywanych przez parametry pBuffer i pReceived odpowiednio.

Sterowniki obsługujące tylko pliki w formatach WiaImgFmt_BMP i WiaImgFmt_MEMORYBMP (domyślne formaty dla mikrodriverów) mogą przyjmować polecenie CMD_SETFORMAT. Te sterowniki mogą ignorować to polecenie, ponieważ sterownik klasy obsługuje wszystkie transfery danych przy użyciu formatów domyślnych.

CMD_SETSCANMODE

Wywołany przez sterownik skanera płaskiego WIA w celu ustawienia trybu skanowania — podglądowego lub ostatecznego — urządzenia obsługiwanego przez mikrosterownik. Element członkowski lVal struktury VAL będzie zawierać jedną z następujących wartości, z których obie są zdefiniowane w wiamicro.h:

  • SCANMODE_PREVIEWSCAN − tryb skanowania w wersji zapoznawczej

  • SCANMODE_FINALSCAN − Końcowy tryb skanowania

CMD_SETSTIDEVICEHKEY

Wywołany przez sterownik Flatbed WIA, aby umożliwić mikrosterownikowi odczytywanie wpisów w zainstalowanej sekcji rejestru. To polecenie udostępnia HKEY rejestru zainstalowanego urządzenia STI mikrosterownikowi, aby mógł uzyskać dostęp do prywatnych wartości rejestru dla swojego urządzenia. Element pHandle struktury VAL będzie zawierać wskaźnik do klucza HKEY przekazanego sterownikowi WIA Flatbed Driver podczas metody IStiUSD::Initialize w ramach STI. Jest to klucz HKEY najwyższego poziomu w sekcji zainstalowanego urządzenia. Klucz DeviceData można otworzyć bezpośrednio przy użyciu tego klucza HKEY. Aby uzyskać więcej informacji , zobacz pliki INF dla urządzeń WIA .

Uwaga / Notatka

Ten klucz jest otwierany i zamykany tylko przez sterownik WIA Flatbed. Jest on również prawidłowy tylko podczas tego polecenia i CMD_INITIALIZE (zobacz Wymagane polecenia). Po powrocie tych poleceń klucz nie jest już prawidłowy. Wartość HKEY nie może być buforowana.