Condividi tramite


Comandi obbligatori

Il set seguente di comandi obbligatori deve essere implementato da ogni microdriver.

CMD_GETCAPABILITIES

Chiamato da WIA Flatbed Driver per ottenere informazioni sull'evento del pulsante. Devono essere compilati tre membri della struttura VAL passata: lVal deve essere impostato sul numero di pulsanti; pGuid deve essere impostato su una matrice di GUID evento; ppButtonNames può essere impostato facoltativamente su una matrice WCHAR* che contiene i nomi dei pulsanti nello stesso ordine in cui si trovano in pGuid (ad esempio, "Pulsante di scansione" o "Pulsante fax"). Se ppButtonNames è impostato su NULL, il driver WIA Flatbed creerà nomi di pulsante generici. Le matrici possono essere allocate in risposta a CMD_INITIALIZE e liberate in CMD_UNINITIALIZE.

CMD_INITIALIZE

Chiamato da WIA Flatbed Driver per inizializzare il microdriver e impostare gli handle di I/O del dispositivo su valori validi. Questo comando verrà inviato al microdriver quando il servizio WIA chiama il metodo IWiaMiniDrv::d rvInitializeWia nel driver WIA Flatbed.

Il driver WIA Flatbed creerà automaticamente un handle di I/O del dispositivo e lo inserisce nel membro della matrice DeviceIOHandles della struttura SCANINFO passata in corrispondenza dell'indice 0. Il microdriver deve usare questo handle quando deve comunicare con il dispositivo. Se il microdriver necessita di handle di dispositivo aggiuntivi (ad esempio, per usare più pipe USB bulk), possono essere creati e archiviati nella matrice DeviceIOHandles fino a un numero massimo di MAX_IO_HANDLES. Il driver WIA Flatbed chiuderà automaticamente l'handle in corrispondenza dell'indice 0, perché ha creato tale handle durante l'inizializzazione. Gli altri handle devono essere chiusi dal microdriver in risposta a CMD_UNINITIALIZE.

Come parte di questo comando, il microdriver deve inizializzare anche tutti i valori nella struttura SCANINFO . Il microdriver deve impostare i membri SupportedDataTypes, IntensityRange, ContrastRange, BedWidth e BedHeight della struttura SCANINFO, in modo che WIA Flatbed Driver possa convalidare automaticamente questi valori in base agli intervalli legali per il dispositivo.

CMD_RESETSCANNER

Chiamato da WIA Flatbed Driver per reimpostare il dispositivo in risposta a una richiesta di servizio WIA. Il microdriver deve impostare il dispositivo sullo stato di accensione. In Windows Vista, il driver WIA Flatbed non usa questo comando. Tuttavia, i microdriver devono continuare a supportare questo comando per garantire un'operazione corretta in Windows XP e, possibilmente, con una versione futura del driver WIA Flatbed che potrebbe usare questo comando.

CMD_SETDATATYPE

Chiamato da WIA Flatbed Driver per impostare il tipo di dati per l'analisi. Uno dei valori seguenti viene passato nel membro lVal della struttura VAL passata:

  • WIA_DATA_THRESHOLD − bianco/nero a 1 bit

  • WIA_DATA_GRAYSCALE − scala di grigi a 8 bit

  • WIA_DATA_COLOR − colore a 24 bit

Il microdriver deve archiviare il valore nel membro DataType della struttura SCANINFO passata.

CMD_SETCONTRAST

Chiamato dal driver WIA Flatbed per impostare il valore di contrasto per l'analisi. Il valore di contrasto desiderato viene passato nel membro lVal della struttura VAL passata. Il valore −1000 deve essere interpretato come il valore di contrasto più basso, 0 nominale e 1000 il contrasto massimo del dispositivo. Il microdriver deve archiviare il valore nel membro Contrast della struttura SCANINFO passata.

CMD_SETINTENSITY

Chiamato dal driver WIA Flatbed per impostare l'intensità o il valore di luminosità per l'analisi. Il valore di intensità desiderato viene passato nel membro lVal della struttura VAL passata. Il valore −1000 deve essere interpretato come il valore di luminosità più basso, 0 nominale e 1000 la luminosità massima del dispositivo. Il microdriver deve archiviare il valore nel membro Intensità della struttura SCANINFO passata.

CMD_SETXRESOLUTION

Chiamato dal driver WIA Flatbed per impostare la risoluzione dell'analisi orizzontale. La risoluzione desiderata in pixel viene passata nel membro lVal della struttura VAL passata. Il microdriver deve archiviare il valore nel membro XResolution della struttura SCANINFO passata.

CMD_SETYRESOLUTION

Chiamato dal driver WIA Flatbed per impostare la risoluzione dell'analisi verticale. La risoluzione desiderata in pixel viene passata nel membro lVal della struttura VAL passata. Il microdriver deve archiviare il valore nel membro YResolution della struttura SCANINFO passata.

CMD_STI_DEVICERESET

Chiamato da WIA Flatbed Driver per reimpostare il dispositivo in risposta a una richiesta still image (STI). Questo comando viene in genere chiamato una sola volta, durante l'inizializzazione.

CMD_STI_DIAGNOSTIC

Chiamato da WIA Flatbed Driver quando l'utente richiede un test del dispositivo.

CMD_UNINITIALIZE

Inizializzare il microdriver e chiudere gli handle di I/O del dispositivo. Il driver WIA Flatbed chiuderà automaticamente l'handle di I/O del dispositivo nel membro della matrice DeviceIOHandles della struttura SCANINFO , in corrispondenza dell'indice 0. Questo comando verrà inviato al microdriver quando il driver WIA Flatbed viene scaricato.