다음을 통해 공유


IWiaDevMgr::SelectDeviceDlgID 메서드(wia_xp.h)

IWiaDevMgr::SelectDeviceDlgID 메서드는 사용자가 이미지 획득을 위해 하드웨어 디바이스를 선택할 수 있는 대화 상자를 표시합니다.

구문

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

매개 변수

[in] hwndParent

형식: HWND

디바이스 선택 대화 상자를 소유하는 창의 핸들입니다.

[in] lDeviceType

형식: LONG

사용할 WIA 디바이스 유형을 지정합니다. StiDeviceTypeDefault, StiDeviceTypeScanner 또는 StiDeviceTypeDigitalCamera로 설정할 수 있습니다.

[in] lFlags

형식: LONG

대화 상자 동작을 지정합니다. 다음 값으로 설정할 수 있습니다.

상수 의미
0 기본 동작을 사용합니다.
WIA_SELECT_DEVICE_NODEFAULT 일치하는 디바이스가 하나만 있는 경우에도 대화 상자를 표시합니다. 자세한 내용은 이 참조 페이지의 설명 섹션을 참조하세요.

[out, retval] pbstrDeviceID

형식: BSTR*

디바이스의 식별자 문자열을 수신하는 문자열에 대한 포인터입니다.

반환 값

형식: HRESULT

이 메서드는 다음 값을 반환합니다.

반환 값 의미
S_OK 디바이스가 성공적으로 선택되었습니다.
S_FALSE 사용자가 대화 상자를 취소했습니다.
WIA_S_NO_DEVICE_AVAILABLE 사양과 일치하는 사용자의 컴퓨터에 연결된 WIA 하드웨어 디바이스가 없습니다.

설명

이 메서드는 IWiaDevMgr::SelectDeviceDlg와 비슷한 방식으로 작동합니다. 주요 차이점은 일치하는 디바이스를 찾으면 디바이스에 대한 IWiaItem 개체의 계층 트리를 만들지 않는다는 것입니다.

IWiaDevMgr::SelectDeviceDlg와 마찬가지로 IWiaDevMgr::SelectDeviceDlgID 메서드는 디바이스 선택 대화 상자를 만들고 표시합니다. 이렇게 하면 사용자가 이미지 획득을 위해 WIA 디바이스를 선택할 수 있습니다. 디바이스가 성공적으로 선택되면 IWiaDevMgr::SelectDeviceDlgID 메서드는 해당 pbstrDeviceID 매개 변수를 통해 식별자 문자열을 애플리케이션에 전달합니다.

lDeviceType 매개 변수를 통해 디바이스 유형을 지정하여 특정 유형의 디바이스를 사용자에게 표시할 수 있습니다. 하나의 디바이스만 사양을 충족하는 경우 IWiaDevMgr::SelectDeviceDlgID디바이스 선택 대화 상자를 표시하지 않습니다. 대신 대화 상자를 표시하지 않고 디바이스의 식별자 문자열을 애플리케이션에 전달합니다. 이 동작을 재정의하고 lFlags 매개 변수의 값으로 WIA_SELECT_DEVICE_NODEFAULT 전달하여 IWiaDevMgr::SelectDeviceDlgID를 강제로 디바이스 선택 대화 상자를 표시할 수 있습니다.

둘 이상의 WIA 디바이스가 사양과 일치하는 경우 사용자가 선택할 수 있도록 일치하는 모든 디바이스가 디바이스 선택 대화 상자에 표시됩니다.

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

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional, Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 wia_xp.h(Wia.h 포함)
라이브러리 Wiaguid.lib
DLL Wiaservc.dll