我将为我的Web项目创建安装程序。我使用http://blog.bartdemeyer.be/2013/10/create-an-installer-for-website-with-wix-part-1/作为参考。在本文的中间,作者创建了一个WebSiteContent.wxs
使用heat.exe的文件:
<Target Name="Harvest">
<!-- Harvest all content of published result -->
<Exec
Command='$(WixPath)heat dir $(Publish) -dr INSTALLFOLDER -ke -srd -cg MyWebWebComponents -var var.publishDir -gg -out $(WebSiteContentCode)'
ContinueOnError="false"
WorkingDirectory="." />
</Target>
在运行msbuild之后,文件包含以下内容:
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<!--...-->
<Fragment>
<ComponentGroup Id="MyWebWebComponents">
<!--...-->
<Component Id="cmpCDB7F4EFDEF1E65C3B12BEBAD7E4D7EA" Directory="INSTALLFOLDER" Guid="{7EA5DB39-513D-482B-9FDC-2F16FCE5E712}">
<File Id="fil8994620207C22CA15AF75ACDD6420C79" KeyPath="yes" Source="$(var.publishDir)\Web.config" />
</Component>
</ComponentGroup>
<!--...-->
</Fragment>
</Wix>
我想按照从WiX更改XML节点值中所述更改web.config文件内容的值,但是我不知道如何将WebSiteContent.wxs文件外部的引用添加到fil8994620207C22CA15AF75ACDD6420C79元素。
我知道我可以将xml脚本添加到WebSiteContent.wxs文件中。但是因为在每个版本中都将对其进行清理,所以我不想在每个版本中都更改WebSiteContent.wxs文件。
如参考示例中所示,在属性中使用带#前缀的文件ID。由热量产生的文件ID在其位置规范方面是稳定的。
如果不可读,则可以通过加热和XSL将文件ID更改为固定值。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句