iStillImageW::RegisterLaunchApplication 方法 (sti.h)

IStillImage::RegisterLaunchApplication 方法将应用程序添加到静态图像事件监视器的推送模型感知应用程序列表中。

语法

HRESULT RegisterLaunchApplication(
  [in] LPWSTR pwszAppName,
  [in] LPWSTR pwszCommandLine
);

参数

[in] pwszAppName

调用方提供的指向表示应用程序“短名称”的字符串的指针,扫描仪和相机控制面板的属性表将显示该名称。

[in] pwszCommandLine

调用方提供的指向字符串的指针,该字符串表示启动应用程序所需的命令行,包括应用程序可执行文件的完整路径。 可以通过调用 getModuleFileName (获取当前路径,如Microsoft Windows SDK文档) 中所述。 有关详细信息,请参阅以下 “备注” 部分。

返回值

如果操作成功,该方法将返回S_OK。 否则,它将返回 stierr.h 中定义的以 STIERR 为前缀的错误代码之一。

注解

应用程序 (或应用程序的安装程序) 必须调用 IStillImage::RegisterLaunchApplication ,以便静止图像事件监视器知道其存在。 用户通过使用控制面板的属性表接口将静止图像设备事件与已注册的应用程序相关联。 用户将设备事件与应用程序关联后,事件监视器将在事件发生时启动应用程序。

方法在注册表中写入应用程序的加载路径。 因此,每次运行应用程序时都应调用 方法,因为用户可能移动了文件, 并且 GetModuleFileName 始终返回当前文件位置。

可以在应用程序的命令行中包含命令参数。 启动已注册的应用程序时,事件监视器会将以下两个参数追加到命令行:

命令行参数 说明
**/StiDevice:**InternalDeviceName InternalDeviceName 是为其启动应用程序的设备的内部设备名称。
**/StiEvent:**EventGUID EventGUID 是已发生的设备事件的 GUID 的字符串表示形式。

应用程序可以通过调用 IStillImage::GetSTILaunchInformation 来获取为这些参数指定的值。

在调用 IStillImage::RegisterLaunchApplication 之前, IStillImage COM 接口的客户端必须调用 IStillImage::StiCreateInstance 以获取 IStillImage 接口指针。

要求

要求
目标平台 桌面
标头 sti.h (包括 Sti.h)