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

일치하는 디바이스가 하나만 있어도 대화 상자를 표시합니다.

pbstrDeviceID [in, out]

형식: BSTR*

출력에서 은 디바이스의 식별자 문자열을 포함하는 문자열을 받습니다. 입력에서 이 정보가 필요한 경우 포인터의 주소를 전달하거나 필요하지 않은 경우 NULL 을 전달합니다.

ppItemRoot [out, retval]

형식: IWiaItem2**

선택한 WIA 2.0 디바이스를 나타내는 계층 트리의 루트 항목에 대한 IWiaItem2 인터페이스에 대한 포인터의 주소를 받습니다. 디바이스를 찾을 수 없으면 NULL을 수신합니다.

반환 값

형식: HRESULT

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

반환 코드 Description
S_OK
디바이스가 성공적으로 선택되었습니다.
S_FALSE
사용자가 대화 상자를 취소했습니다.
WIA_S_NO_DEVICE_AVAILABLE
lDeviceType 매개 변수에 지정된 사양과 일치하는 WIA 2.0 하드웨어 디바이스가 없습니다.

 

설명

이 메서드는 사용자가 이미지 획득을 위해 WIA 2.0 디바이스를 선택할 수 있도록 디바이스 선택 대화 상자를 만들고 표시합니다. 디바이스가 성공적으로 선택되면 IWiaDevMgr2::SelectDeviceDlg 메서드는 디바이스에 대한 IWiaItem2 개체의 계층 트리를 만듭니다. 루트 항목의 IWiaItem2 인터페이스에 대한 포인터를 ppItemRoot 매개 변수에 저장합니다.

애플리케이션은 lDeviceType 매개 변수를 통해 디바이스 유형을 지정하여 사용자에게 표시되는 디바이스를 특정 형식으로 제한할 수 있습니다. 하나의 디바이스만 사양을 충족하는 경우 IWiaDevMgr2::SelectDeviceDlg디바이스 선택 대화 상자를 표시하지 않습니다. 대신 디바이스에 대한 IWiaItem2 트리를 만들고 루트 항목의 IWiaItem2 인터페이스에 대한 포인터를 ppItemRoot 매개 변수에 저장합니다. 이 동작을 재정의하고 lFlags 매개 변수의 값으로 WIA_SELECT_DEVICE_NODEFAULT 지정하여 IWiaDevMgr2::SelectDeviceDlg를 강제로 대화 상자를 표시할 수 있습니다. 둘 이상의 WIA 2.0 디바이스가 사양과 일치하는 경우 사용자가 선택할 수 있도록 일치하는 모든 디바이스가 디바이스 선택 대화 상자에 표시됩니다.

애플리케이션은 ppItemRoot 매개 변수를 통해 수신하는 인터페이스 포인터에서 IUnknown::Release 메서드를 호출해야 합니다.

참고

애플리케이션은 파일 메뉴의 스캐너에서라는 메뉴 항목을 통해 디바이스 및 이미지 선택을 사용할 수 있도록 하는 것이 좋습니다.

 

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버
Windows Server 2008 [데스크톱 앱만 해당]
헤더
Wia.h
IDL
Wia.idl