共用方式為


建立推送模型感知的應用程式

推送模型感知的應用程式是已向 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"
    

    支援推播模型感知應用程式的裝置需要兩個 INF 檔案專案: DeviceData事件。 如需詳細資訊,請參閱 仍然映像裝置的 INF 檔案

任一這些方法都會讓應用程式向 靜態影像事件監視器註冊。

如果應用程式註冊為支援推播模型,用戶可以使用掃描器和相機控制面板將 靜態圖像設備事件 分配給應用程式。 此外,廠商也可以藉由在裝置驅動程式的 INF 檔案中包含應用程式名稱,為應用程式提供裝置事件的初始指派。 用戶可以使用掃描器和相機控制面板來變更此初始指派。

將裝置事件指派給應用程式之後,事件監視器會在偵測到指派的裝置事件發生時啟動應用程式。

啟動推播模型感知應用程式時,應該呼叫 IStillImage::GetSTILaunchInformation 來判斷事件及其啟動的裝置。 然後,它可以呼叫 IStillImage::GetDeviceInfo 以取得裝置的詳細資訊。

應用程式必須處理事件,或必須建立用戶顯示,說明它為何無法處理事件。 大概,使用者接著會使用 [控制面板] 將裝置事件與其他應用程式產生關聯。

處理事件通常是指載入影像。 若要這樣做,應用程式通常會呼叫 影像擷取 API,例如 TWAIN。

如果應用程式因為發生事件而啟動,但影像擷取 API 尚未以數據模式開啟裝置(請參閱 傳輸模式),如果偵測到另一個事件,事件監視器將會啟動應用程式的另一個實例。 應用程式必須實作,以便允許多個實例或(最好)辨識它不是第一個實例、將訊息傳送至識別事件的第一個實例,然後結束。