Wix неожиданный дочерний элемент 'iis:WebVirtualDir'

Я создаю установщик, который развертывает мое приложение MVC на IIS7, используя Wix Toolset. У меня есть этот код, который я нашел на этом: /questions/83411/ispolzovanie-wix-dlya-sozdaniya-virtualnogo-kataloga-iis/83440#83440

Это выдает ошибку, которая говорит: The Directory element contains an unexpected child element 'iis:WebVirtualDir'.

Я уверен, что я включил схему и добавил WixIISExtension к ссылкам, так что должно работать. Вот весь код:

<?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:iis="http://schemas.microsoft.com/wix/IIsExtension">

   <Product Id="6FAD9EC7-D2B0-4471-A657-C8AF5F6F707F" Name="Vince Wix 3 Web Service" Language="1033" Version="1.0.0.0" Manufacturer="Vince LLC" UpgradeCode="6FAD9EC7-D2B0-4471-A657-C8AF5F6F707F"> <Package InstallerVersion="200" Compressed="yes" />

<Media Id="1" Cabinet="WebAppWixProject.cab" EmbedCab="yes" />

<iis:WebSite Id='DefaultWebSite' Description='Default Web Site' Directory='WEBDIRECTORY'>   <iis:WebAddress IP="*" Id="AllUnassigned" Port="80" /> </iis:WebSite>    <Directory Id="TARGETDIR" Name="SourceDir">   <Directory Id="ProgramFilesFolder">
    <Directory Id="WebApplicationFolder" Name="MyWebApp">
      <iis:WebVirtualDir Id="ProductVirtualDirectory" Alias="foo" Directory="WEBDIRECTORY" WebSite="DefaultWebSite">
        <iis:WebApplication Id="ERIC6_Deploy" Name="Web Application 1"/> 
      </iis:WebVirtualDir>
    </Directory>   </Directory> </Directory>

<Feature Id="ProductFeature" Title="WixProject" Level="1">
    <ComponentRef Id="IIS.Component" /> </Feature>


 </Product>    </Wix>

Кто-нибудь может мне помочь в этом? Я Noob Wix и изучаю его со вчерашнего дня, но все еще не могу заставить мою простую работу установщика..: /

1 ответ

Решение

Внимательно посмотрите на ответ, который вы опубликовали в качестве примера; вы не можете иметь WebVirtualDir в качестве прямого дочернего элемента каталога, между ними отсутствует компонентный узел:

<Directory Id="WebApplicationFolder" Name="MyWebApp">
  <Component Id="IIS.Component" Guid="YOUR-GUID-HERE" KeyPath="yes">
    <iis:WebVirtualDir Id="ProductVirtualDirectory" Alias="foo" Directory="WEBDIRECTORY" WebSite="DefaultWebSite">
      <iis:WebApplication Id="ERIC6_Deploy" Name="Web Application 1"/> 
    </iis:WebVirtualDir>
  </Component>
</Directory>

Не забудьте заменить YOUR-GUID-HERE на GUID, созданный вами!

Другие вопросы по тегам