Microsoft STI と Microsoft WIA の概要
従来の Windows オペレーティング システムのイメージング アーキテクチャは、低レベルのハードウェア抽象化層である STI、および TWAIN と呼ばれる高度な API セットから構成されていました。 最新の Windows オペレーティング システムでは、Microsoft は WINDOWS イメージング アーキテクチャ (WIA) を使用しています。これは、STI に基づくイメージング アーキテクチャです。 次の図は、これら 2 種類のイメージング アーキテクチャを表したものです。
前の図に示すように、TWAIN/STI アーキテクチャには、高レベルのイメージ取得 API セットである TWAIN と、低レベルのハードウェア抽象化である STI が含まれています。 WIA アーキテクチャには、イメージング デバイスの IHV に完全なソリューションを提供するための基礎として、STI が組み込まれています。
STI と WIA の違い
WIA ドライバは、STI が提供する基盤の上に構築されているため、独自のインターフェイスに加えて STI のインターフェイスも公開します。 少なくとも、WIA ドライバーは IStiUSD インターフェイスを公開する必要があります。 STI には、WIA インターフェイスに対応する依存関係はありません。 WIA ミニドライバーは STI ミニドライバーに準拠している必要があるため、WIA 対応のカメラまたはスキャナーを STI イメージデバイスにする STI ミニドライバーのみを記述することができます。 ただし、ユーザー エクスペリエンスを向上するために WIA をお勧めします。 たとえば、カメラの STI ドライバーでは、エクスプローラーにサムネイルが表示されません。
STI と WIA の違いは、次のとおりです。
STI は、クライアント アプリケーション プロセスとシステム サービス プロセスの両方で実行されます。WIA はシステム サービス プロセスでのみ実行されます。
低レベルのハードウェア抽象化である STI には、動作するためにデバイスに関する詳細情報が必要です。WIA は、このような詳細なデバイス情報がなくても動作できます。
STI は完全なイメージング インターフェイスではありません。WIA は、STI の上に構築されており、IHV をイメージングするための完全なソリューションです。 IHV が提供する UI モジュール (Twain など) は、デバイス通信メカニズムのみを備え、UI フロントエンドがないため、STI アーキテクチャで必要です。 WIA ミニドライバーには既定の UI (スキャナーとカメラ ウィザード) があるため、独自の UI モジュールは必要ありません。 さらに、Twain インターフェイスは、WIA アーキテクチャの TWAIN 互換性レイヤーを通じてサポートされます。 IHV は、WIA でこれらの既定の UI を拡張または置き換えることができます。
WIA アーキテクチャの詳細については、「WIA アーキテクチャの概要」を参照してください。