使用Wix安装Web应用程序

Jas*_*son 5 iis wix

所以我正在尝试安装一个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,但有时它会让我发疯.