我正在使用WiX工具集和使用
this手册为IIS网站创建安装程序.我遇到了以下语法
<iis:WebSite Id="DemoWebsiteWebsite" Description='Demo Website' Directory='INSTALLFOLDER' AutoStart='yes' StartOnInstall='yes'> <iis:WebAddress Id="AllUnassigned" Port="80" /> <iis:WebApplication Id="DemoWebsiteApplication" Name="[DemoWebsiteWebsite][WEBSITE_ID]" WebAppPool="DemoWebsiteAppPool"></iis:WebApplication> </iis:WebSite>
我对[]语法和网站ID的使用方式感到困惑.我需要使用用户输入的一些自定义值.所以我有以下问题:
> []语法在WiX中意味着什么?它是如何与用于访问定义值的$()语法相关联的?
>两个[]之后是否有任何其他含义,如此处[DemoWebsiteWebsite] [WEBSITE_ID]?
>为什么在[DemoWebsiteWebsite]表达式中使用WebSite Id?这只是一个巧合或命名惯例吗?
> []内允许使用的值是多少?他们有什么样的清单吗?
>在哪里可以找到有关此语法及其用例的其他信息?
解决方法
这是将Windows Installer属性解析为实际值的方式.如果您在MSI对话框中输入了名为WEBSITE的属性,则可以通过将其放在方括号中来解析为实际值.这就是你看到[TARGETDIR],[SourceDir]等等的原因.大多数生成MSI文件的工具都使用该语法,因为它是Windows Installer的东西.
这是doc链接,它隐藏在这里:
Formatted Windows Installer
所以1 – 它们是MSI文件中的属性,可以是标准的Windows Installer属性,也可以是用户创建的属性:
Property Reference
2,它们只是连接的两个属性.它们区分大小写,所以不要随意使用.在理解它们是安装程序属性之后,其他要点应该是清楚的.
WiX源中的$()值是编译时间 – 它们在构建时解析为实际值. []值在安装时解析.