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
调用方提供的指向描述设备事件的 STINOTIFY 结构的指针。 通常,通过调用 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 (include Sti.h) |