次の方法で共有


イベント通知の提供

WIA サービスは、IWiaMiniDrv::drvNotifyPnpEvent メソッドを呼び出すことにより、サポートされているデバイス イベントを WIA ミニドライバーに通知します。 このメソッド内で、ミニドライバーは、イベントへの対応に必要となるデバイス特有の機能を実装します。 WIA サービスは、デバイスが IWiaMiniDrv::d rvGetCapabilities メソッドでサポートできることをミニドライバーが示したイベントに対してのみ、IWiaMiniDrv::d rvNotifyPnpEvent メソッドを呼び出します。

ミニドライバーは、STI イベント メカニズムを経由する方法、または wiasQueueEvent を用いて当該デバイスからのイベント通知をイベント キューに加える方法のいずれかにより、イベントを開始します。

非同期動作: 電力管理と I/O の取り消し

ほとんどの場合、WIA サービスは一度に 1 回の呼び出しのみがドライバーに対して行われるようにします。 ただし、一部のメソッドは本質的に非同期であり、本質的に再帰可能です。 その代表的な例として、IWiaMiniDrv::drvNotifyPnpEvent メソッドが挙げられます。

WIA サービスは本メソッドを使用することで、迅速な対応が求められる可能性のあるイベントについて、ドライバーに通知します。 たとえば、WIA サービスがデバイスが取り外されたことを示すプラグ アンド プレイ イベントを受け取ると、直ちにドライバーに通知されます。 その他の例としては、電力管理に関するイベントやアプリケーションからの I/O 取り消しなどが挙げられます。

IWiaMiniDrv::drvNotifyPnpEvent メソッドの実装例については、各種イベントへの適切な対応方法を示した「割り込みイベントのサポートの追加」を参照してください。