作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图防止我的服务在 WiX 安装程序的重大升级中丢失其设置(凭据和其他选项)。我听从了建议here ,我正在尝试使用
<InstallExecuteSequence>
<DeleteServices>NOT UPGRADINGPRODUCTCODE</DeleteServices>
</InstallExecuteSequence>
但我的服务仍在升级时重新安装,每次升级时都会丢失我的凭据和其他服务设置。
在日志中,我的条件看起来只得到了一次。我明白了
MSI (s) (6C:E8) [16:52:53:944]: Skipping action: DeleteServices (condition is false)
然后几百行之后,我明白了
MSI (s) (6C:A4) [16:52:54:873]: Doing action: DeleteServices
所以在我看来,第二个DeleteServices 是我的问题。谁能告诉我如何抑制第二个,或者我正在做什么导致它?
我正在使用 WiX 工具集 3.7。这是我的代码,显然已删除指南。
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id='*' Name='My Product' Language='1033'
Version='1.0.6' Manufacturer='Me' UpgradeCode='PUT-GUID-HERE' >
<Package Description='My Product' Platform='x86' Id='*'
Manufacturer='Me' InstallerVersion='200' Compressed='yes' />
<MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed. Setup will now exit."/>
<InstallExecuteSequence>
<DeleteServices>NOT UPGRADINGPRODUCTCODE</DeleteServices>
</InstallExecuteSequence>
<Media Id='1' Cabinet='product.cab' EmbedCab='yes' />
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='ProgramFilesFolder' Name='PFiles'>
<Directory Id='AgentDir' Name='Agent'>
<Component Id='Binaries' Guid='PUT-GUID-HERE' Win64='no'>
<File Id='AgentExe' Source='../MyProduct/MyExe.exe' KeyPath='yes' ProcessorArchitecture='x86' />
<ServiceInstall Id="TheServiceInstall" Description="[ProductName]" EraseDescription="no" DisplayName="[ProductName]" ErrorControl="normal" Interactive="no" Name="[ProductName]" Start="auto" Type="ownProcess" Vital="yes">
</ServiceInstall>
</Component>
</Directory>
</Directory>
</Directory>
<Feature Id='CompleteInstall' Title='My Product' Level='1'>
<ComponentRef Id='Binaries' />
</Feature>
</Product>
</Wix>
谢谢!
最佳答案
看来我的问题不是服务被删除,而是新产品的安装导致我丢失了服务设置。
我将其添加到我的 InstallExecuteSequence block 中,它似乎已经成功了
<InstallServices>NOT WIX_UPGRADE_DETECTED</InstallServices>
感谢斯蒂芬的帮助!
关于service - 防止服务在 WiX 重大升级时丢失设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16408599/
不久前,我不小心将一个项目文件转换为 Visual Studio 2010(当然,没有源代码控制)。虽然没有重新创建项目文件(这将只需要大约 10 或 15 分钟),而是查看了典型的 2008 项目文
我是一名优秀的程序员,十分优秀!