アプリケーション項目とドライバー項目
WIA 項目は、デバイス属性とデバイス データを表します。 イメージング アプリケーションは、WIA デバイスを項目の階層ツリーとして認識します。ルート項目はデバイス自体を表し、子項目は画像、または画像を含むフォルダーを表します。 ただし、アプリケーションに表示されるツリーは、WIA ミニドライバーによって作成およびメインされたツリーとは別です。 ミニドライバーが項目のツリーを作成すると、WIA サービスは、イメージング アプリケーションで表示できるこのツリーの同じコピーを自動的に作成します。 コピーされたツリー内の項目は アプリケーション項目 と呼ばれます。 ミニドライバーによって作成されたツリー内の項目は ドライバー項目 と呼ばれます。
複数の撮像アプリケーションは、1 つの撮像装置を同時に使用することができます。 したがって、デバイス ツリー内の項目オブジェクトの各アプリケーションのビューは、別のアプリケーションのビューから独立している必要があります。 これは次のように行われます。
ミニドライバーは IWiaMiniDrv インターフェイスと WIA ドライバー サービス ライブラリ関数 を使用して IWiaDrvItem インターフェイス オブジェクトの項目ツリーを作成します。 このドライバー項目ツリー内の項目は、ミニドライバーがデバイスの項目を表すために使用するグローバル オブジェクトです。
イメージング アプリケーションがツリー内の項目へのアクセスを要求すると、WIA サービスはドライバー項目のコピーである項目オブジェクトを返します。 アプリケーションがアプリケーション IWiaItem (Microsoft Windows SDK ドキュメントで説明) 項目オブジェクト (アプリケーション項目) を取得すると、WIA サービスはこのオブジェクトを ドライバー項目ツリー のミニドライバーの対応する IWiaDrvItem オブジェクトにリンクします。
WIA はアプリケーションごとに個別の アプリケーション項目ツリー を作成し、各アプリケーション項目ツリーはドライバー項目ツリーのコピーです。
アプリケーションでは通常、 IWiaItem オブジェクトを使用して項目のプロパティの読み取り、検証、書き込みを行い、項目データを要求します。
次の図は、アプリケーション項目とドライバー項目の関係を示しています。
図に示すように、各イメージング アプリケーションには、項目ツリーの個別のコピーがあります。 アプリケーション項目ツリーのルート項目には、デバイス項目ツリー内のルート項目へのポインターが戻ります。
この記セクションの残りの部分では、次のトピックについて説明します。