次の方法で共有


プッシュ モデル対応のアプリケーションの作成

プッシュ モデル対応アプリケーションは、静止画像デバイス イベントが発生したときに自動的にアクティブ化できるよう、Microsoft STI に登録されているアプリケーションです。 アプリケーションは、次の 2 つの方法のいずれかでプッシュ モデルに対応させることができます。

  • 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 の 2 つの INF ファイル エントリが必要です。 詳しくは、「静止画像デバイスの INF ファイル」をご覧ください。

どちらの方法でも、アプリケーションが静止画像イベント モニターに登録されます。

アプリケーションがプッシュ モデル対応として登録されている場合、ユーザーはスキャナーとカメラ コントロール パネルを使って静止画像デバイス イベントをアプリケーションに割り当てることができます。 加えて、ベンダーは、デバイス ドライバーの INF ファイル内にアプリケーション名を含めることで、アプリケーションへのデバイス イベントの初期割り当てを提供できます。 ユーザーは、スキャナーと カメラ コントロール パネルを使ってこの初期割り当てを変更できます。

デバイス イベントがアプリケーションに割り当てられた後、イベント モニターは、割り当てられたデバイス イベントの発生を検出すると、アプリケーションを起動します。

プッシュ モデル対応アプリケーションがアクティブ化されると、IStillImage::GetSTILaunchInformation を呼び出して、イベントと起動されたデバイスを特定する必要があります。 その後、IStillImage::GetDeviceInfo を呼び出して、デバイスに関する詳細情報を取得できます。

アプリケーションはイベントを処理する必要があります。または、イベントを処理できない理由を説明するユーザー表示を作成する必要があります。 ユーザーはコントロール パネルを使用して、デバイス イベントを他のアプリケーションに関連付けると考えられます。

イベントの処理は通常、画像内の読み取りを意味します。 これを行うために、アプリケーションは通常、TWAIN などのイメージ取得 API を呼び出します。

イベントが発生したためにアプリケーションが起動されたが、イメージ取得 API がデータ モードでデバイスを開いておらず (「転送モード」を参照)、別のイベントが検出された場合、イベント モニターはアプリケーションの別のインスタンスを起動します。 複数のインスタンスを許可するか、(できれば) それが最初のインスタンスでないことを認識して、イベントを識別するメッセージを最初のインスタンスに送信して終了するよう、アプリケーションを実装する必要があります。