WiX - 修改现有服务以依赖我正在安装的服务

时间:2010-04-06 10:53:37

标签: wix wix3

使用Wix3,确保正在安装的Windows服务依赖于已安装在目标计算机上的服务,这是微不足道的,但我需要做相反的事情 - 即作为我的安装的一部分,我需要修改现有服务(即已安装在目标计算机上)的服务依赖性,以确保该服务依赖于我正在安装的服务。

使用WiX有一种简单的方法吗?或者我需要编写自定义操作吗?

编辑 - 该方案围绕MS Office Communications Server将分发消息的自定义Windows服务。一旦OCS配置为分派给该服务(并且它被标记为关键服务),那么该服务必须启动并运行才能启动OCS服务。所以我们需要依赖它来确保我们的服务在OCS之前启动,我们通常会在安装后手动添加依赖项。

我知道,这也让我不寒而栗。

非常感谢,

1 个答案:

答案 0 :(得分:1)

这是组件规则违规的一种形式,因为Windows安装程序仅为密钥文件创建服务,您将创建一个重复的组件来控制服务。

基本上你使用属于不属于你自己的组件的资源属性。写这个服务时,我猜它不知道你的服务,所以它怎么可能依赖你的服务呢?

我真正想问的是你想解决的问题是什么?如果您真的必须在WiX / MSI中执行此操作,那么最好使用自定义操作调用服务控制管理器并添加依赖项。如果安装服务决定撤消您的更改,请不要惊讶,因为它与应该如何配置该服务的概念不匹配。