WIA Minidriver

Le applicazioni visualizzano dispositivi Windows Image Acquisition (WIA) come albero gerarchico di oggetti IWiaItem o IWiaItem2 con l'elemento radice che rappresenta il dispositivo stesso. I dispositivi WIA possono essere usati simultaneamente da più applicazioni. È quindi necessario che la visualizzazione di ogni applicazione di un oggetto IWiaItem o IWiaItem2 sia indipendente dalla visualizzazione di un'altra applicazione. Questa operazione viene eseguita con due oggetti elemento diversi. Il driver crea l'albero degli elementi driver degli oggetti Interfaccia IWiaDrvItem , chiamati anche elementi driver, usando i metodi dei servizi driver WIA. Questi sono oggetti globali usati dal driver per rappresentare gli elementi interni di ogni driver. Quando un'applicazione crea un oggetto IWiaItem o IWiaItem2 (chiamato anche elemento dell'applicazione), questo oggetto è collegato all'interfaccia IWiaDrvItem corrispondente nell'albero degli elementi del driver. Un conteggio dei riferimenti viene mantenuto nell'oggetto Interfaccia IWiaDrvItem soggetto alle regole seguenti:

Usando questo schema di conteggio dei riferimenti, molti oggetti IWiaItem o IWiaItem2 possono collegarsi a un'interfaccia IWiaDrvItem senza interferenze. Poiché ogni IWiaItem o IWiaItem2 contiene la propria risorsa di archiviazione delle proprietà, un'applicazione può continuare a leggere le proprietà dell'elemento anche dopo l'eliminazione di un elemento, ma nessuna operazione che richiede l'accesso al dispositivo avrà esito positivo. Poiché le proprietà dell'elemento vengono archiviate nell'oggetto IWiaItem o IWiaItem2, il driver deve impostare le proprietà dell'oggetto IWiaItem o IWiaItem2 nel dispositivo prima del trasferimento dei dati.