wix:安装/卸载完成后重新启动现有服务 [英] wix: re-start an existing Service when install/uninstall finish

查看:92
本文介绍了wix:安装/卸载完成后重新启动现有服务的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在安装程序完成安装或卸载后重新启动正在运行的服务.
我找到了以下代码:

I would like to re-start a running service when my installer finish installing or uninstalling.
I have found this code:

<ServiceControl Id="SomeUniqueId" Name="NameOfTheirService"
            Start="both" Stop="both"/>

但是我要将这段代码附加到哪里? 到放置我的组件的位置?

But where do i attach this code to ? to the component where my is placed ?

代码:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="325c4bfd-6614-43e9-aedb-93661295352d" Name="Plugin" Language="1033" Version="1.0.0.0"
       Manufacturer="XXX Inc." UpgradeCode="4307526e-3902-40d0-991b-bacff9b3d71b">
<Package InstallerVersion="200" Compressed="yes" />
<Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />
<Property Id="XXXXXX">
  <RegistrySearch Id="XXXXXX" Type="raw" 
                  Root="HKLM" Key="SOFTWARE\XXX\XXX" Name="InstallationPath" />

</Property>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="XXXXXX">
    <Component Id="ProductComponent" Guid="93118c45-f0c0-4c9e-9168-8ea905e9427c">
      <File Id="pluggin" Source="C://setup.log" KeyPath="yes" Checksum="yes"/>
      <ServiceControl Id="StartService" Name="servicename"
         Start="both" Stop="both"/>
    </Component>     
    </Directory>
    </Directory>
    <Feature Id="ProductFeature" Title="install" Level="1">
        <ComponentRef Id="ProductComponent" />
  <ComponentGroupRef Id="Product.Generated" />
    </Feature>
</Product>

推荐答案

ServiceControl元素必须放置在您安装的组件中.从WiX .chm:

The ServiceControl element must be placed in a component that you install. From the WiX .chm:

启动,停止和删除父组件的服务.此元素用于通过使用开始,停止和删除属性来控制由MSI或MSM文件安装的服务的状态.例如,Start ='install'Stop ='both'Remove ='uninstall'的意思是:在安装时启动服务,在卸载产品时删除服务,并在安装和卸载时均停止服务.

Starts, stops, and removes services for parent Component. This element is used to control the state of a service installed by the MSI or MSM file by using the start, stop and remove attributes. For example, Start='install' Stop='both' Remove='uninstall' would mean: start the service on install, remove the service when the product is uninstalled, and stop the service both on install and uninstall.

这篇关于wix:安装/卸载完成后重新启动现有服务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆