installshield xp service recovery配置失败
前提:
windows service需要做一个恢复设置,具体如下:
Installshield service recovery配置:
发现在win7中可以通过installshield自带servcie配置 进行操作,在xp中就不可以,网上搜了一圈 也发现有类似问题,没找到原因
解决思路:
如果用installshield自带配置在xp上不行,想着就写一个CA可以去配置,简略方案如下:
新建一个Custom Action,执行下面命令,注意需要deferred执行
win7 sc命令写法:
sc.exe failure SERVICENAME actions=restart/60000 reset=0
xp sc命令写法:
sc.exe failure SERVICENAME actions= restart/60000 reset=0
注意区别,actions= 后面xp有一个空格
原因思考:
分析了win7跟xp的安装log,发现一个有意思的地方,在xp中MsiConfigureService的condition是false,这个自带action不会执行
而win7中MsiConfigureServices可以执行。
需要注意的是MsiConfigureServices的执行条件是VersionMsi>="5.0"
xp中VersionMsi是:
win7中VersionMsi是:
所以猜测这是xp中不能配置service recovery的原因