이벤트 등록

다음 예제에서는 WIA(Windows Image Acquisition) 1.0 IWiaDevMgr::RegisterEventCallbackCLSID 메서드를 사용하여 WIA(Windows 이미지 획득) 디바이스가 시스템에 연결된 경우 알림을 등록합니다. 애플리케이션은 WIA 1.0 IWiaDevMgr::RegisterEventCallbackInterface 및 WIA 1.0 IWiaDevMgr::RegisterEventCallbackProgram 을 사용하여 이벤트를 등록할 수도 있습니다. Windows Vista 이상에서는 WIA(Windows Image Acquisition) 2.0 IWiaDevMgr2::RegisterEventCallbackCLSID, IWiaDevMgr2::RegisterEventCallbackInterface 또는 IWiaDevMgr2::RegisterEventCallbackProgram 메서드를 사용하여 이벤트를 등록할 수 있습니다.

이 예제는 COM(구성 요소 개체 모델) out-of-process 서버 개체로 등록된 애플리케이션에서 가져온 것으로 가정합니다.

IWiaDevMgr::RegisterEventCallbackCLSID(또는 IWiaDevMgr2::RegisterEventCallbackCLSID)에 대한 호출은 다음과 같습니다.

    pWiaDevMgr->RegisterEventCallbackCLSID( WIA_REGISTER_EVENT_CALLBACK,
                                            NULL,
                                            WIA_EVENT_DEVICE_CONNECTED,
                                            pCLSID,
                                            bstrName,
                                            bstrDescription,
                                            bstrIcon
                                            );

이전 코드에서 pWiaDevMgrIWiaDevMgr (또는 IWiaDevMgr2) 인터페이스에 대한 유효한 포인터입니다. WIA_REGISTER_EVENT_CALLBACK 이 호출이 이벤트에 대한 등록을 취소하는 것이 아니라 이벤트에 등록하도록 지정하는 상수입니다. WIA_EVENT_DEVICE_CONNECTED 디바이스가 사용자의 컴퓨터에 연결될 때마다 알림을 받도록 등록하도록 등록하는 상수입니다. pCLSID 는 애플리케이션의 등록된 CLSID에 대한 포인터이고 , bstrName 은 애플리케이션의 이름이며, bstrDescription 은 애플리케이션의 텍스트 설명이며, bstrIcon 은 이벤트에 등록하는 애플리케이션의 아이콘에 사용할 이미지 파일의 이름입니다.

애플리케이션은 애플리케이션이 등록된 이벤트가 발생할 때마다 호출되는 IWiaEventCallback::ImageEventCallback 메서드를 구현해야 합니다.

애플리케이션은 IWiaItem::EnumRegisterEventInfo (또는 IWiaItem2::EnumRegisterEventInfo) 메서드를 사용하여 등록된 이벤트에 대한 정보를 열거할 수 있습니다.