Condividi tramite


Comandi facoltativi

I comandi seguenti possono essere implementati dal microdriver, ma non è necessario farlo.

CMD_GETSUPPORTEDFILEFORMATS

Chiamato da WIA Flatbed Driver per ottenere il numero di formati di file aggiuntivi. Due membri della struttura VAL passata devono essere compilati: lVal deve essere impostato sul numero di formati di file aggiuntivi; pGuid deve puntare a una matrice di GUID di formato immagine. La memoria allocata per questa matrice è di proprietà del microdriver e deve essere liberata solo da esso.

I formati di immagine sono elencati in wiadef.h o possono essere definiti come formati personalizzati. Si noti che poiché i formati BMP (file) e MEMORYBMP (memoria) sono necessari, il driver flat WIA li aggiunge automaticamente. Il microdriver non deve aggiungerli all'elenco esteso.

Questo comando è facoltativo a meno che il dispositivo non possa supportare formati di file aggiuntivi.

CMD_GETSUPPORTEDMEMORYFORMATS

Chiamato dal driver flat WIA per ottenere il numero di formati di memoria aggiuntivi. Due membri della struttura VAL passata devono essere compilati: lVal deve essere impostato sul numero di formati di memoria aggiuntivi; pGuid deve puntare a una matrice di GUID di formato immagine. La memoria allocata per questa matrice è di proprietà del microdriver e deve essere liberata solo da esso.

I formati di immagine sono elencati in wiadef.h o possono essere definiti come formati personalizzati. Si noti che poiché i formati BMP (file) e MEMORYBMP (memoria) sono necessari, il driver flat WIA li aggiunge automaticamente. Il microdriver non deve aggiungerli all'elenco esteso.

Questo comando è facoltativo a meno che il dispositivo non possa supportare formati di memoria aggiuntivi.

CMD_SETFORMAT

Il driver di classe invia questo comando per impostare il formato corrente come richiesto dall'applicazione. Il membro pGuid della struttura VAL contiene il GUID del formato immagine. Il microdriver deve salvare questo ID di formato immagine nel relativo contesto privato, per tenere traccia dell'impostazione corrente del formato immagine.

I microdriver sono necessari per supportare questo comando solo se segnalano formati estesi. Poiché il driver di classe non ha modo di convalidare i dati in formati estesi, è responsabilità del microdriver generare i dati appropriati. Quando si trasferiscono dati in un formato esteso, tutti i dati devono essere trasferiti, incluse le intestazioni di immagine. Ad esempio, se il driver segnala che supporta il formato JPEG, tutti i file JPEG devono essere trasferiti, non solo i bit di immagine.

Il driver di classe possiede la memoria puntata dal membro pGuid della struttura VAL, quindi il microdriver non deve liberarlo.

Si noti che questo comando non influisce sul modo in cui un microdriver risponde alle chiamate alla funzione Scan . Come di consueto, il microdriver deve controllare i valori dei parametri lPhase, pScanInfo e lLength di questa funzione e inserire i dati nei buffer a cui puntano i parametri pBuffer e pReceived in base alle esigenze.

I driver che supportano solo i file nei formati WiaImgFmt_BMP e WiaImgFmt_MEMORYBMP (i formati predefiniti per i microdriver) possono ricevere il comando CMD_SETFORMAT. Questi driver possono ignorare questo comando, perché il driver di classe gestisce tutti i trasferimenti di dati usando i formati predefiniti.

CMD_SETSCANMODE

Chiamato dal driver WIA Flatbed per impostare la modalità di analisi - anteprima o finale - del dispositivo del microdriver. Il membro lVal della struttura VAL conterrà uno dei valori seguenti, entrambi definiti in wiamicro.h:

  • SCANMODE_PREVIEWSCAN - Modalità di analisi in anteprima

  • SCANMODE_FINALSCAN - Modalità di analisi finale

CMD_SETSTIDEVICEHKEY

Chiamato da WIA Flatbed Driver per consentire al microdriver di leggere le voci del Registro di sistema nella sezione del Registro di sistema installata. Questo comando fornisce al microdriver il registro di sistema HKEY installato dal dispositivo STI, in modo che possa accedere ai valori del Registro di sistema privati per il dispositivo. Il membro pHandle della struttura VAL conterrà un puntatore all'HKEY assegnato al driver flat WIA durante il metodo IStiUSD::Initialize di STI. Si tratta dell'HKEY di primo livello della sezione del dispositivo installato. La chiave DeviceData può essere aperta direttamente usando questa chiave HKEY. Per altre informazioni, vedere File INF per dispositivi WIA .

Nota

Questa chiave viene aperta e chiusa solo dal driver flat WIA. È anche valido solo durante questo comando e CMD_INITIALIZE (vedere Comandi obbligatori). Dopo aver restituito questi comandi, la chiave non è più valida. Il valore HKEY non deve essere memorizzato nella cache.