如何在InstallShield中向Windows服务添加依赖项? 我的winservice依赖于以下两个服务,因此它们必须在服务启动之前运行:
注意:我使用InstallShield项目来安装我的服务而不是Windows安装程序类,所以我无法使用先生的方式。 Jerry.Wang在his article中建议。
修改
如何在installshield中向SEN服务添加依赖项?
答案 0 :(得分:2)
如果您对其他服务有依赖关系,ServiceInstall table有依赖关系列来描述:
此列是服务名称或加载顺序组的列表 系统必须在此服务之前启动。单独的名称 由Nulls列出。如果服务没有依赖项,则指定Null 或一个空字符串。使用语法[〜]插入Null。依赖于 一个组意味着如果至少有一个成员,该服务可以运行 尝试启动组的所有成员后,组正在运行。
例如,要求系统启动service1和service2, 在启动ServiceInstall列中列出的服务之前,请输入 service1 [〜] service2 [〜] [〜]进入Dependencies列。该 标识符service1和service2必须出现在主键中 该表或是已安装的服务的名称。
您必须在组名前加上+,以便区分它们 从服务名称。要求系统启动service1和at 在开始之前,订购组MyGroup中至少有一个成员 在ServiceInstall列中列出的服务,输入 服务1 [〜] + MyGroup的[〜] [〜]。
以下是InstallShield对该表的表示的说法:
输入此服务所需的任何服务或加载订购组。在启动此服务之前,系统会尝试启动从属服务或加载顺序组的至少一个成员。
用逗号(,)分隔多个依赖项。
您必须在每个加载订购组的名称前面加上 SC_GROUP_IDENTIFIER-通常是加号(+) - 所以 服务控制管理器可以将其与服务区分开来。
答案 1 :(得分:0)
我自己通过在ServiceComponent向导中添加依赖项来解决它。