WIA ドライバー コマンドのサポート
WIA デバイス コマンドは、(イメージング アプリケーションの代わりに) WIA サービスによって WIA ミニドライバーに送信される要求で、特定のアクションを実行するように指示します。
ミニドライバーに発行できる WIA デバイス コマンドの一覧を次に示します。
コマンド | 意味 |
---|---|
WIA_CMD_CHANGE_DOCUMENT | 次のドキュメントに変更します (マルチドキュメント スキャナーにのみ発行されます)。 |
WIA_CMD_DELETE_ALL_ITEMS | ドライバー項目ツリーを削除します。 |
WIA_CMD_DIAGNOSTIC | Microsoft によって予約されています。 |
WIA_CMD_SYNCHRONIZE | ドライバー項目ツリーを再構築します。 すべてのミニドライバーは、このコマンドをサポートする必要があります。 |
WIA_CMD_TAKE_PICTURE | 写真を撮ります (カメラにのみ発行されます)。 |
WIA_CMD_UNLOAD_DOCUMENT | 現在のドキュメントをアンロードします (マルチドキュメント スキャナーにのみ発行されます)。 |
WIA_CMD_XXX コマンドについては、Microsoft Windows SDK のドキュメントで説明されています。 独自のコマンドのカスタム リストを含めることができます。
デバイス コマンドのサポートの追加
デバイス コマンドを報告するように WIA ミニドライバーを適切に設定するには、IWiaMiniDrv::drvGetCapabilities メソッドでサポートされているコマンドの配列を報告します。 IWiaMiniDrv::drvGetCapabilities メソッドの実装例については、「割り込みイベントのサポートの追加」を参照してください。
IWiaMiniDrv::drvDeviceCommand メソッドの実装
WIA サービスは、アプリケーションによる IWiaItem::DeviceCommand メソッドへの呼び出しに応答して、IWiaMiniDrv::drvDeviceCommand メソッドを呼び出します (Microsoft Windows SDK ドキュメントで説明されています)。 IWiaMiniDrv::drvDeviceCommand メソッドは、次のタスクを実行する必要があります。
送信されたコマンドがサポートされているコマンドであるかどうかを確認します。
コマンド要求を処理します。
WIA ドライバーは、pWiasContext ポインターを使用してデバイス コマンドを受信する WIA 項目を確認する必要があります。 WIA ドライバーは、受信する WIA 項目を対象とする、受信したデバイス コマンドを処理する必要があります。 サポートされていない WIA ドライバーに送信されたコマンドは、E_INVALIDARG エラー コードで失敗する必要があります。
IWiaMiniDrv::drvDeviceCommand メソッドの実装例については、「項目ツリーの変更のアプリケーションへの通知」を参照してください。