У меня есть установщик, который устанавливает службы Windows.Код для запуска и остановки службы окна приведен ниже:
<Component Id="cmp690F4EBE95710C864C32A36852D2EB2F" Guid="{F933F79A-F76B-45F9-A951-6AD31C77B180}">
<File Id="fil61E48774FB18BBADEDCE4566002C9F54" KeyPath="yes" Source="$(var.APMrelease)\LiveServer.exe" Name="LiveServer.exe" DiskId="1">
<firewall:FirewallException Id="LiveServer.exe" Name="LiveServer.exe" Description="LiveServer 2.0" Profile="all" IgnoreFailure="yes" Scope="any" />
</File>
<ServiceInstall Id="InstallLiveServerService" DisplayName=" LiveServer" Description="LiveServer 2.0" Name="LiveServer" Start="auto" Type="ownProcess" Vital="yes" ErrorControl="normal">
<util:ServiceConfig FirstFailureActionType="restart" SecondFailureActionType="restart" ThirdFailureActionType="restart" ResetPeriodInDays="4" />
<!--<ServiceDependency Id="PostMaster" />-->
</ServiceInstall>
<ServiceControl Id="StopLiveServerService" Name="LiveServer" Stop="both" Remove="uninstall" Wait="yes" />
</Component>
Я запускаю службу с настраиваемым действием, что вполне нормально.Но при удалении установщика иногда служба зависает и не может остановиться из-за сбоя при удалении.Есть ли способ подождать, а затем убить службу или любой другой обходной путь?