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

IWiaDevMgr::RegisterEventCallbackInterface 메서드는 실행 중인 애플리케이션 WIA(Windows Image Acquisition) 이벤트 알림을 등록합니다.

구문

HRESULT RegisterEventCallbackInterface(
  [in]  LONG              lFlags,
  [in]  BSTR              bstrDeviceID,
  [in]  const GUID        *pEventGUID,
  [in]  IWiaEventCallback *pIWiaEventCallback,
  [out] IUnknown          **pEventObject
);

매개 변수

[in] lFlags

형식: LONG

현재 사용되지 않습니다. 0으로 설정해야 합니다.

[in] bstrDeviceID

형식: BSTR

디바이스 식별자를 지정합니다. NULL을 전달하여 모든 WIA 디바이스에서 이벤트에 등록합니다.

[in] pEventGUID

형식: const GUID*

애플리케이션이 등록하는 이벤트를 지정합니다. 표준 이벤트 목록은 WIA 이벤트 식별자를 참조하세요.

[in] pIWiaEventCallback

형식: IWiaEventCallback*

WIA 시스템이 이벤트 알림을 보내는 데 사용한 IWiaEventCallback 인터페이스에 대한 포인터입니다.

[out] pEventObject

형식: IUnknown**

IUnknown 인터페이스에 대한 포인터의 주소를 받습니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

경고 스틸 이미지 서비스를 다시 시작한 후 동일한 프로세스에서 IWiaDevMgr::RegisterEventCallbackInterface, IWiaDevMgr2::RegisterEventCallbackInterfaceDeviceManager.RegisterEvent 메서드를 사용하면 서비스가 중지되기 전에 함수를 사용한 경우 액세스 위반이 발생할 수 있습니다.
 
실행을 시작할 때 WIA 애플리케이션은 이 메서드를 사용하여 WIA_NOTIFICATION_EVENT 유형의 하드웨어 디바이스 이벤트를 수신하도록 등록합니다. 이렇게 하면 등록된 다른 이벤트가 발생할 때 애플리케이션이 다시 시작되지 않습니다. 프로그램이 IWiaDevMgr::RegisterEventCallbackInterface 를 호출하여 디바이스에서 WIA 이벤트를 수신하도록 등록하면 등록된 이벤트가 WIA 시스템에 의해 프로그램으로 라우팅됩니다.

애플리케이션은 EnumRegisterEventInfo 메서드를 사용하여 이벤트 등록 속성에 대한 열거자 개체에 대한 포인터를 검색합니다.

애플리케이션은 이벤트 열거형에서 반환된 WIA_DEV_CAP 구조체의 ulFlags 값을 검사하여 이벤트가 작업 유형인지 알림 유형인지(또는 둘 다) 이벤트인지 확인할 수 있습니다.

애플리케이션은 pEventObject 매개 변수를 통해 반환된 IUnknown 포인터를 사용하여 IUnknown::Release 메서드를 호출하여 이벤트 등록을 취소할 수 있습니다.

참고 다중 스레드 애플리케이션에서는 콜백을 등록한 동일한 스레드에서 이벤트 알림 콜백이 들어오는 것을 보장할 수 없습니다.
 

요구 사항

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