Delen via


Vereiste opdrachten

De volgende set vereiste opdrachten moet door elke microdriver worden geïmplementeerd.

CMD_GETCAPABILITIES

Wordt aangeroepen door de WIA Flatbed-driver om knopgebeurtenisinformatie op te halen. Drie leden van de doorgegeven VAL-structuur moeten worden ingevuld: lVal moet worden ingesteld op het aantal knoppen; pGuid moet worden ingesteld op een matrix met gebeurtenis-GUID's; ppButtonNames kunnen eventueel worden ingesteld op een WCHAR*-matrix die de knopnamen in dezelfde volgorde bevat als in pGuid (bijvoorbeeld 'Scanknop' of 'Faxknop'). Als ppButtonNames is ingesteld op NULL, maakt het WIA Flatbed Driver algemene knopnamen. De arrays kunnen worden toegewezen als reactie op CMD_INITIALIZE en worden vrijgemaakt in CMD_UNINITIALIZE.

CMD_INITIALIZE

Aangeroepen door het WIA Flatbed Driver om de microdriver te initialiseren en I/O-ingangen van het apparaat in te stellen op geldige waarden. Deze opdracht wordt verzonden naar de microdriver wanneer de WIA-service de methode IWiaMiniDrv::d rvInitializeWia aanroept op het WIA Flatbed Driver.

Het WIA Flatbed Driver maakt automatisch één I/O-ingang van het apparaat en plaatst deze in het matrixlid DeviceIOHandles van de doorgegeven SCANINFO-structuur op index 0. De microdriver moet deze ingang gebruiken wanneer deze moet communiceren met het apparaat. Als de microdriver extra apparaatgrepen nodig heeft (bijvoorbeeld om meerdere bulk USB-communicatiepijpen te gebruiken), kunnen ze worden gemaakt en opgeslagen in de DeviceIOHandles-array tot een maximum aantal MAX_IO_HANDLES. De WIA Flatbed Driver sluit automatisch de handle bij index 0, omdat het die handle tijdens de initialisatie heeft gemaakt. De andere handvatten moeten door de microdriver worden gesloten als reactie op CMD_UNINITIALIZE.

Als onderdeel van deze opdracht moet de microdriver ook alle waarden in de STRUCTUUR SCANINFO initialiseren. De microdriver moet de leden SupportedDataTypes, IntensityRange, ContrastRange, BedWidth en BedHeight van de STRUCTUUR SCANINFO instellen, zodat het WIA Flatbed Driver deze waarden automatisch kan valideren op basis van de wettelijke bereiken voor het apparaat.

CMD_RESETSCANNER

Wordt aangeroepen door het WIA Flatbed Driver om het apparaat opnieuw in te stellen als reactie op een WIA-serviceaanvraag. De microdriver moet het apparaat instellen op de inschakelstatus. In Windows Vista gebruikt het WIA Flatbed Driver deze opdracht niet. Microdrivers moeten deze opdracht echter blijven ondersteunen om de juiste werking in Windows XP te garanderen en, mogelijk, met een toekomstige versie van het WIA Flatbed Driver die deze opdracht kan gebruiken.

CMD_SETDATATYPE

Aangeroepen door het WIA Flatbed Driver om het gegevenstype voor de scan in te stellen. Een van de volgende waarden wordt doorgegeven in het lVal-lid van de doorgegeven VAL-structuur :

  • WIA_DATA_THRESHOLD − 1-bits zwart/wit

  • WIA_DATA_GRAYSCALE − 8-bits grijswaarden

  • WIA_DATA_COLOR − 24-bits kleur

De microdriver moet de waarde opslaan in het DataType-lid van de doorgegeven SCANINFO-structuur .

CMD_SETCONTRAST

Wordt aangeroepen door het WIA Flatbed Driver om de contrastwaarde voor de scan in te stellen. De gewenste contrastwaarde wordt doorgegeven in het lVal-lid van de doorgegeven VAL-structuur . De waarde -1000 moet worden geïnterpreteerd als de laagste contrastwaarde, 0 nominale waarden en 1000 het maximumcontrast van het apparaat. De microdriver moet de waarde opslaan in het contrastlid van de doorgegeven SCANINFO-structuur .

CMD_SETINTENSITY

Wordt aangeroepen door het WIA Flatbed Driver om de intensiteit of helderheidswaarde voor de scan in te stellen. De gewenste intensiteitswaarde wordt doorgegeven in het lVal-lid van de doorgegeven VAL-structuur . De waarde -1000 moet worden geïnterpreteerd als de laagste helderheidswaarde, 0 nominaal en 1000 de maximale helderheid van het apparaat. De microdriver moet de waarde opslaan in het lid Intensiteit van de doorgegeven SCANINFO-structuur .

CMD_SETXRESOLUTION

Wordt aangeroepen door het WIA Flatbed Driver om de horizontale scanresolutie in te stellen. De gewenste resolutie in pixels wordt doorgegeven in het lVal-lid van de doorgegeven VAL-structuur . De microdriver moet de waarde opslaan in het XResolution-lid van de doorgegeven SCANINFO-structuur .

CMD_SETYRESOLUTION

Wordt aangeroepen door het WIA Flatbed Driver om de verticale scanresolutie in te stellen. De gewenste resolutie in pixels wordt doorgegeven in het lVal-lid van de doorgegeven VAL-structuur. De microdriver moet de waarde opslaan in het lid YResolution van de doorgegeven SCANINFO-structuur.

CMD_STI_DEVICERESET

Wordt aangeroepen door het WIA Flatbed Driver om het apparaat opnieuw in te stellen als reactie op een STI-aanvraag (Still Image). Deze opdracht wordt doorgaans slechts één keer aangeroepen tijdens de initialisatie.

CMD_STI_DIAGNOSTIC

Wordt aangeroepen door het WIA Flatbed Driver wanneer de gebruiker een test van het apparaat aanvraagt.

CMD_UNINITIALIZE

De-initialiseer de microdriver en apparaat-I/O-handlers sluiten. Het WIA Flatbed Driver sluit automatisch de I/O-ingang van het apparaat in het matrixlid DeviceIOHandles van de structuur SCANINFO op index 0. Deze opdracht wordt naar de microdriver verzonden wanneer het WIA Flatbed-stuurprogramma aan het ontladen is.