Wix: я не могу использовать некоторые теги: / - PullRequest
0 голосов
/ 06 мая 2010

Я хочу создать установщик в Wix. Я использую версию 3.5, интегрированную с VS2008 Professional. Мне нужно обнаружить установку MS SQL Server (я делаю это) и в конечном итоге установить его. Я пытаюсь использовать загрузчик, есть код:

    <ItemGroup>
      <BootstrapperFileMax Include="Microsoft.Sql.Server.Express.9.2">
        <ProductName>SQL Server 2005 Express Edition</ProductName>
      </BootstrapperFileMax>
    </ItemGroup>

Компилятор возвращает мне эту ошибку:

Ошибка 2: элемент Product содержит неожиданный дочерний элемент ItemGroup.

Может быть, мне нужны ссылки? Должен ли я опубликовать весь код?

Спасибо за вашу помощь. Яцек

Ответы [ 3 ]

2 голосов
/ 06 мая 2010

Элемент продукта WiX не может содержать ItemGroup, как предполагает ошибка.

См. Здесь описание элемента Product и его допустимых дочерних элементов.

http://wix.sourceforge.net/manual-wix2/wix_xsd_product.htm

Код загрузчика обычно добавляется в файл msbuild (файл .csproj), а не в файл wix .wxs, который, я думаю, может быть там, где вы его поместили - см. Здесь описание того, как это сделать:

http://wix.sourceforge.net/manual-wix3/install_dotnet.htm

Если это не решит вашу проблему, возможно, добавьте все содержимое ваших файлов .wxs и .wxproj к вопросу - это должно обеспечить достаточный контекст, чтобы помочь людям в решении вашей проблемы.

0 голосов
/ 07 мая 2010

Вы должны использовать 'BootStrapperFile', а не BootstrapperFileMax.

Я использую BootStrapperFile и он работает нормально.

SQL Server 2005 Express Edition

0 голосов
/ 06 мая 2010

Скорее всего, тег ItemGroup размещен неправильно. Вот краткий пример:

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup>
    <BootstrapperFile Include="Microsoft.Net.Framework.2.0">
      <ProductName>Microsoft .NET Framework 2.0</ProductName>
    </BootstrapperFile>
    <BootStrapperFile Include="Microsoft.ReportViewer.8.0">
      <ProductName>Microsoft Report Viewer</ProductName>
    </BootStrapperFile>
  </ItemGroup>

  <Target Name="Bootstrapper">
    <GenerateBootstrapper
      ApplicationFile="WixBootstrapSample.msi"
      ApplicationName="Wix Sample"
      BootstrapperItems="@(BootstrapperFile)"
      OutputPath=".\"
      ComponentsLocation="HomeSite"
      Culture="en"
    />
  </Target>
</Project>

Пример из wixwiki . Более подробное описание развертывания дополнительных компонентов вы можете найти здесь .

...