所以我正在尝试安装一个Web应用程序,我偶然发现了这个问题:使用WiX创建一个IIS虚拟目录.当我尝试为我自己的应用程序调整它时,我收到一个错误:
W:\ projectlocation\IssInstallationComponents.wxs(6,0):错误LGHT0204:ICE18:组件的KeyPath:'SiteInstallationComponent'是目录:'WEBDIRECTORY'.目录/组件对必须在CreateFolders表中列出.
我一直试图解决这个问题.这是我在受影响的文件中的内容:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:iis="http://schemas.microsoft.com/wix/IIsExtension">
<Fragment>
<DirectoryRef Id="WEBDIRECTORY">
<Component Id="SiteInstallationComponent" Guid="MY GUID">
<iis:WebVirtualDir Id="ProductVirtualDirectory" Alias="[PRODUCTVERSION]" Directory="WEBDIRECTORY" WebSite="DefaultWebSite"/>
</Component>
</DirectoryRef>
<iis:WebSite Id='DefaultWebSite' Description='Default Web Site' Directory='WEBDIRECTORY'>
<iis:WebAddress Id="AllUnassigned" Port="80" />
</iis:WebSite>
</Fragment>
</Wix>
Run Code Online (Sandbox Code Playgroud)
关于我的例子的几个笔记.首先,我知道GUID是错误的,我删除它的上方,使得它不会被谷歌索引和找人找出类似的东西重复使用的样品.在我的代码中,我有一个正确的GUID.我也改变了产品名称,"产品",以避免任何形式的知识产权问题.
关于我需要做些什么才能使这段代码有效?
Jas*_*son 12
叹
好的,我开始挖掘互联网并找到以下主题:http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg03483.html
基本上我需要更改我的组件,使它看起来像这样:
<Component Id="SiteInstallationComponent" Guid="MY GUID">
<CreateFolder />
<iis:WebVirtualDir Id="ProductVirtualDirectory" Alias="[PRODUCTVERSION]" Directory="WEBDIRECTORY" WebSite="DefaultWebSite"/>
</Component>
Run Code Online (Sandbox Code Playgroud)
我爱Wix,但有时它会让我发疯.