IWiaDevMgr2::SelectDeviceDlg メソッド

ユーザーがイメージ取得用のハードウェア デバイスを選択できるようにするダイアログ ボックスを表示します。

構文

HRESULT SelectDeviceDlg(
  [in]          HWND      hwndParent,
  [in]          LONG      lDeviceType,
  [in]          LONG      lFlags,
  [in, out]     BSTR      *pbstrDeviceID,
  [out, retval] IWiaItem2 **ppItemRoot
);

パラメーター

hwndParent [in]

型: HWND

[ デバイスの選択 ] ダイアログ ボックスの親ウィンドウを指定します。

lDeviceType [in]

型: LONG

使用する WIA 2.0 デバイスの種類を指定します。 使用可能な値の一覧については、「 WIA デバイスの種類指定子 」を参照してください。

lFlags [in]

型: LONG

ダイアログ ボックスの動作を指定します。 値には、次のいずれかを指定できます。

0

既定の動作を使用します。

WIA_SELECT_DEVICE_NODEFAULT

一致するデバイスが 1 つしかない場合でも、ダイアログ ボックスを表示します。

pbstrDeviceID [in, out]

種類: BSTR*

出力時に、 はデバイスの識別子文字列を含む文字列を受け取ります。 入力時に、この情報が必要な場合はポインターのアドレスを渡し、必要ない場合は NULL を 渡します。

ppItemRoot [out, retval]

種類: IWiaItem2**

選択した WIA 2.0 デバイスを表す階層ツリーのルート項目の IWiaItem2 インターフェイスへのポインターのアドレスを受け取ります。 デバイスが見つからない場合は、 NULL を受け取ります。

戻り値

型: HRESULT

このメソッドは、これらの値のいずれかを返すことができます。

リターン コード 説明
S_OK
デバイスが正常に選択されました。
S_FALSE
ユーザーがダイアログ ボックスを取り消しました。
WIA_S_NO_DEVICE_AVAILABLE
WIA 2.0 ハードウェア デバイスは 、lDeviceType パラメーターで指定された仕様と一致しません。

 

注釈

このメソッドは、[ デバイスの選択 ] ダイアログ ボックスを作成して表示し、ユーザーが画像取得用の WIA 2.0 デバイスを選択できるようにします。 デバイスが正常に選択された場合、 IWiaDevMgr2::SelectDeviceDlg メソッドは、デバイスの IWiaItem2 オブジェクトの階層ツリーを作成します。 ルート項目の IWiaItem2 インターフェイスへのポインターをパラメーター ppItemRoot に格納します。

アプリケーションでは、 lDeviceType パラメーターを使用してデバイスの種類を指定することで、ユーザーに表示されるデバイスを特定の種類に制限できます。 仕様を満たすデバイスが 1 つだけの場合、 IWiaDevMgr2::SelectDeviceDlg は [ デバイスの選択 ] ダイアログ ボックスを表示しません。 代わりに、デバイスの IWiaItem2 ツリーを作成し、ルート項目の IWiaItem2 インターフェイスへのポインターをパラメーター ppItemRoot に格納します。 この動作をオーバーライドし、lFlags パラメーターの値として WIA_SELECT_DEVICE_NODEFAULT を指定することで、IWiaDevMgr2::SelectDeviceDlg を強制的にダイアログ ボックスに表示できます。 複数の WIA 2.0 デバイスが仕様に一致する場合は、一致するすべてのデバイスが [デバイスの 選択 ] ダイアログ ボックスに表示されるため、ユーザーは 1 つを選択できます。

アプリケーションは、ppItemRoot パラメーターを介して受け取るインターフェイス ポインターで IUnknown::Release メソッドを呼び出す必要があります。

注意

アプリケーションでは、[ファイル] メニューの [スキャナーから] という名前のメニュー項目を使用して、デバイスとイメージの選択を使用できるようにすることをお勧めします。

 

要件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2008 [デスクトップ アプリのみ]
Header
Wia.h
IDL
Wia.idl