Condividi tramite


Scrittura delle proprietà degli elementi WIA da un'applicazione

Quando un'applicazione WIA scrive in una proprietà WIA (e aggiorna il valore archiviato nella proprietà), il servizio WIA offre al minidriver WIA la possibilità di convalidare i valori in ingresso chiamando il metodo IWiaMiniDrv::d rvValidateItemProperties . Il minidriver WIA confronta i valori in ingresso con tutti i valori correnti leggendo le proprietà nell'albero degli elementi del driver. La libreria del servizio WIA fornisce funzioni per l'accesso a questi valori.

Il metodo IWiaMiniDrv::d rvValidateItemProperties deve eseguire le attività seguenti:

  1. Determinare il tipo di elemento.

  2. Determinare se è necessario eseguire una convalida speciale sulle proprietà WIA in ingresso. Per determinare quali proprietà WIA vengono scritte, il minidriver WIA può usare una matrice di strutture PROPSPEC (la struttura PROPSPEC è descritta nella documentazione di Microsoft Windows SDK). È consigliabile che il minidriver WIA determini il tipo di elemento prima di elaborare la matrice PROPSPEC per ridurre la necessità di attraversare la matrice in ogni chiamata IWiaMiniDrv::d rvValidateItemProperties . Se non sono previsti requisiti di convalida speciali o se è necessario aggiornare le proprietà dipendenti nell'elemento radice del dispositivo, verranno elaborate solo le richieste di scrittura alle proprietà dell'elemento figlio.

  3. Creare un contesto di proprietà WIA per accedere ai valori modificati durante la convalida delle proprietà WIA, che è necessario per aggiornare le proprietà dipendenti per un elemento WIA. Usare le funzioni del servizio wiasCreatePropContext e wiasGetChangedValueXxx .

  4. Aggiornare le proprietà dipendenti usando le funzioni del servizio WIA, wiasWriteMultiple o wiasWritePropXxx, che include l'aggiornamento di tutti i valori validi che potrebbero essere stati modificati in seguito all'impostazione di una proprietà. Ad esempio, se il minidriver WIA supporta l'impostazione della proprietà WIA_IPA_DEPTH , è necessario aggiornare l'elenco valido di profondità di bit quando l'applicazione modifica la proprietà WIA_IPA_DATATYPE .

    Quando il valore della proprietà WIA_IPA_DATATYPE passa da WIA_DATA_THRESHOLD a WIA_DATA_COLOR, la proprietà WIA_IPA_DEPTH correlata cambia dalla profondità del colore a un bit alla segnalazione di 24 bit o 48 bit.

  5. Chiamare la funzione del servizio wiasValidateItemProperties per consentire al servizio WIA di convalidare tutte le altre richieste di proprietà. Questo è un caso "catch-all" ; il servizio WIA ha la convalida delle proprietà predefinita.