Push-Model 인식 애플리케이션 만들기

푸시 모델 인식 애플리케이션은 스틸 이미지 디바이스 이벤트가 발생했을 때 자동으로 활성화될 수 있도록 Microsoft STI에 자체적으로 등록된 애플리케이션입니다. 애플리케이션은 다음 두 가지 방법 중 하나를 통해 푸시 모델을 인식할 수 있습니다.

  • IStillImage::RegisterLaunchApplication을 호출합니다. 호출은 애플리케이션 또는 설치 프로그램에서 수행할 수 있습니다.

  • 애플리케이션의 INF(설치 정보) 파일에 항목을 포함합니다. INF 파일의 INF AddReg 지시문 에서 항목을 참조해야 합니다. 항목의 구문은 다음 예제에 나와 있습니다.

    ; Register Application "Imaging" as a push-model aware application for use with the still image event monitor
    HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\StillImage\Registered Applications",Imaging,,"%25%\KodakImg.Exe /StiDevice:%%1 /StiEvent:%%2"
    

    푸시 모델 인식 애플리케이션을 지원하는 디바이스에는 DeviceDataEvents라는 두 개의 INF 파일 항목이 필요합니다. 자세한 내용은 스틸 이미지 디바이스용 INF 파일을 참조하세요.

이러한 방법 중 하나를 사용하면 애플리케이션이 스틸 이미지 이벤트 모니터에 등록됩니다.

애플리케이션이 푸시 모델 인식으로 등록된 경우 사용자는 스캐너 및 카메라 제어판 사용하여 스틸 이미지 디바이스 이벤트를 애플리케이션에 할당할 수 있습니다. 또한 공급업체는 디바이스 드라이버의 INF 파일 내에 애플리케이션 이름을 포함하여 애플리케이션에 디바이스 이벤트의 초기 할당을 제공할 수 있습니다. 사용자는 스캐너 및 카메라 제어판 사용하여 이 초기 할당을 변경할 수 있습니다.

디바이스 이벤트가 애플리케이션에 할당된 후 이벤트 모니터는 할당된 디바이스 이벤트의 발생을 감지할 때 애플리케이션을 시작합니다.

푸시 모델 인식 애플리케이션이 활성화되면 IStillImage::GetSTILaunchInformation 을 호출하여 시작된 이벤트 및 디바이스를 확인해야 합니다. 그런 다음 IStillImage::GetDeviceInfo 를 호출하여 디바이스에 대한 자세한 정보를 얻을 수 있습니다.

애플리케이션은 이벤트를 처리해야 하거나 이벤트를 처리할 수 없는 이유를 설명하는 사용자 디스플레이를 만들어야 합니다. 아마도 사용자는 제어판 사용하여 디바이스 이벤트를 다른 애플리케이션과 연결합니다.

이벤트를 처리하는 것은 일반적으로 이미지에서 읽는 것을 의미합니다. 이를 위해 애플리케이션은 일반적으로 TWAIN과 같은 이미지 획득 API를 호출합니다.

이벤트가 발생했지만 이미지 획득 API가 데이터 모드에서 디바이스를 열지 않은 경우(전송 모드 참조) 이벤트 모니터는 다른 이벤트가 감지되면 애플리케이션의 다른 instance 시작합니다. 애플리케이션은 여러 인스턴스를 허용하거나(가급적) 첫 번째 instance 아닌 경우 를 인식하고, 이벤트를 식별하는 첫 번째 instance 메시지를 보내고, 종료하도록 구현되어야 합니다.