我们需要将Windows服务的启动类型从“自动”修改为“自动延迟启动”。我该怎么做?
我的代码是这样的:
<ServiceInstall
Id="WinServiceInstall"
Name="ServiceManager"
DisplayName="ServiceManager"
Type="ownProcess"
Start="auto"
ErrorControl="normal"
Vital ='yes'
Description ='Monitoring and running the jobs'
Account="[SERVICEACCOUNT]"
Password="[SERVICEPASSWORD]">
<util:ServiceConfig
FirstFailureActionType="restart"
SecondFailureActionType="restart"
ThirdFailureActionType ="restart"
cRestartServiceDelayInSeconds ="10" />
</ServiceInstall>
如何设置重启服务时间?如果失败,我想在2分钟后设置重启服务。
答案 0 :(得分:59)
在ServiceInstall
元素中放置ServiceConfig
元素。
<ServiceConfig DelayedAutoStart="yes" OnInstall="yes" OnReinstall ="yes" />
答案 1 :(得分:-2)
我无法弄清楚如何让服务使用ServiceInstall元素使用“自动延迟启动”(因为它不是枚举中的一个选项),所以我最终设置了一个reg-value。
<RegistryValue Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\[ServiceName]"
Type="integer" Name="DelayedAutostart" Value="1"/>
我把它放在与ServiceInstall相同的组件中,一切似乎都运行正常。我想你可以为服务重启时间做同样的事情。