Compartilhar via


Criando aplicativos com reconhecimento de Push-Model

Um aplicativo com reconhecimento de modelo de push é aquele que se registrou com o Microsoft STI para que ele possa ser ativado automaticamente quando um evento de dispositivo de imagem ainda tiver ocorrido. Um aplicativo pode ser informado por push de um dos dois métodos a seguir:

  • Chamando IStillImage::RegisterLaunchApplication. A chamada pode ser feita pelo aplicativo ou pelo programa de instalação.

  • Incluindo uma entrada no arquivo INF (informações de instalação) do aplicativo. A entrada deve ser referenciada por uma Diretiva AddReg INF no arquivo INF. A sintaxe da entrada é ilustrada no exemplo a seguir:

    ; 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"
    

    Duas entradas de arquivo INF são necessárias para dispositivos que dão suporte a aplicativos com reconhecimento de modelo por push: DeviceData e Eventos. Para obter mais informações, consulte Arquivos INF para dispositivos de imagem ainda.

Qualquer um desses métodos faz com que o aplicativo seja registrado com o Still Image Event Monitor.

Se um aplicativo estiver registrado como reconhecimento de modelo por push, um usuário poderá atribuir Eventos de Dispositivo de Imagem Ainda ao aplicativo com os scanners e câmeras Painel de Controle. Além disso, os fornecedores podem fornecer uma atribuição inicial de eventos de dispositivo para aplicativos, incluindo nomes de aplicativos no arquivo INF de um driver de dispositivo. Um usuário pode alterar essa atribuição inicial com os scanners e câmeras Painel de Controle.

Depois que os eventos do dispositivo tiverem sido atribuídos a um aplicativo, o monitor de eventos iniciará o aplicativo quando detectar uma ocorrência de um evento de dispositivo atribuído.

Quando um aplicativo com reconhecimento de modelo de push é ativado, ele deve chamar IStillImage::GetSTILaunchInformation para determinar o evento e o dispositivo para o qual ele foi iniciado. Em seguida, ele pode chamar IStillImage::GetDeviceInfo para obter mais informações sobre o dispositivo.

O aplicativo deve manipular o evento ou criar uma exibição de usuário explicando por que ele não pode lidar com o evento. Presumivelmente, o usuário usará Painel de Controle para associar o evento do dispositivo a algum outro aplicativo.

Lidar com o evento normalmente significa ler em uma imagem. Para fazer isso, o aplicativo normalmente chama uma API de Aquisição de Imagem, como TWAIN.

Se um aplicativo tiver sido iniciado porque ocorreu um evento, mas uma API de aquisição de imagem não abriu o dispositivo no modo de dados (consulte Modos de Transferência), o monitor de eventos iniciará outra instância do aplicativo se outro evento for detectado. O aplicativo deve ser implementado para que ele permita várias instâncias ou (preferencialmente) reconheça quando não for a primeira instância, envie uma mensagem para a primeira instância que identifica o evento e saia.