作为我正在使用的引导程序系统的一部分,我正在使用 WiX 创建一个 MSI,该 MSI 以以下方式调用:
msiexec /i product.msi WEBSITENAME="Default Web Site" PORT="80"
WEBSITENAME 和 PORT 参数表示网站的名称和端口,它是作为我正在使用的引导程序系统的早期部分创建的。在我的 *.wxs 文件中,我希望能够使用这些传入的参数来获得对网站的“引用”,以便我可以在同一个网站下创建其他 Web 应用程序、虚拟目录等。
我已经能够通过“硬编码”现有的网站名称和端口来做到这一点,即
<!-- Reference existing Default Web Site at port 80 -->
<iis:WebSite Id="DefaultWebSite" Description="Default Web Site">
<iis:WebAddress Id="MySiteWebAddress" Port="80"/>
</iis:WebSite>
<!-- Reference existng Default Application Pool -->
<iis:WebAppPool Id="DefaultApplicationPool" Name="DefaultAppPool">
</iis:WebAppPool>
然后使用这些硬编码值在下面创建虚拟目录
<iis:WebVirtualDir Id="MyVirtualDir" Alias="Images" Directory="ImagesDirectory" WebSite="DefaultWebSite">
<iis:WebApplication Id="MyWebSiteApplication" Name="ImagesWebSite" WebAppPool="DefaultApplicationPool"/>
</iis:WebVirtualDir>
我现在想做的是用传入命令行的值替换硬编码的“默认网站”。
这可能吗?如果有怎么办?我已经阅读了一些关于使用属性的信息,但我不知道如何用属性替换硬编码字符串。任何帮助将非常感激。
谢谢!