次の方法で共有


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 メソッドは、次のタスクを実行する必要があります。

  1. 送信されたコマンドがサポートされているコマンドであるかどうかを確認します。

  2. コマンド要求を処理します。

WIA ドライバーは、pWiasContext ポインターを使用してデバイス コマンドを受信する WIA 項目を確認する必要があります。 WIA ドライバーは、受信する WIA 項目を対象とする、受信したデバイス コマンドを処理する必要があります。 サポートされていない WIA ドライバーに送信されたコマンドは、E_INVALIDARG エラー コードで失敗する必要があります。

IWiaMiniDrv::drvDeviceCommand メソッドの実装例については、「項目ツリーの変更のアプリケーションへの通知」を参照してください。