IStillImageW::LaunchApplicationForDevice 方法 (sti.h)
IStillImage::LaunchApplicationForDevice 方法會針對指定的仍然映射裝置啟動指定的應用程式。
語法
HRESULT LaunchApplicationForDevice(
[in] LPWSTR pwszDeviceName,
[in] LPWSTR pwszAppName,
[in] LPSTINOTIFY pStiNotify
);
參數
[in] pwszDeviceName
呼叫端提供的字串指標,代表內部裝置名稱,呼叫 IStillImage::GetSTILaunchInformation 或 IStillImage::GetDeviceList 取得。
[in] pwszAppName
呼叫端提供的字串指標,代表呼叫 IStillImage::RegisterLaunchApplication 所註冊之應用程式的簡短名稱。
[in] pStiNotify
呼叫端提供的 STIFY 結構指標,描述裝置事件。 一般而言,呼叫 IStiDevice::GetLastNotificationData 即可取得事件的 GUID。
傳回值
如果作業成功,方法會傳回S_OK。 否則,它會傳回 stierr.h 中定義的其中一個 STIERR 前置錯誤碼。
備註
IStillImage::LaunchApplicationForDevice 方法只能藉由呼叫 IStillImage::RegisterLaunchApplication 來啟動已自行註冊的應用程式。 指定的事件必須是指定裝置支援的事件。 方法會模擬發生裝置事件,而且對於攔截裝置事件並重新路由的應用程式很有用。 當使用者啟動掃描器時,這類應用程式可能會詢問使用者是否要儲存掃描的影像、製作複本或傳送傳真。
呼叫 IStillImage::LaunchApplicationForDevice 之前, IStillImage COM 介面的客戶端必須呼叫 IStillImage::StiCreateInstance 以取得 IStillImage 介面指標。
範例
HRESULT hRes;
hRes = pStiDevice->GetLastNotificationData(&pNotify);
if (!SUCCEEDED(hRes))
{
DisplayOutput("->GetLastNotificationData returned %xh %u",
hReturn,hReturn);
}
// Process or filter events here
// Send event on to app
hRes = pSti->LaunchApplicationForDevice(pStiInfoPtr->szDeviceInternalName,
L"AppName",
pNotify);
if (!SUCCEEDED(hRes))
{
DisplayOutput("->LaunchApplicationForDevice on %S returned %xh %u",
pStiInfoPtr->szDeviceInternalName,hReturn,hReturn);
}
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | sti.h (包含 Sti.h) |