Модуль слияния WIX: Попытка использовать $ (var.Project.TargetFileName) - PullRequest
2 голосов
/ 12 февраля 2009

Я создал простой модуль слияния Wix 3 в VS 2005 (.wxs)

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Module Id="TestMergeModule" Language="1033" Version="1.0.0.0">
    <Package Id="ef2a568e-a8db-4213-a211-9261c26031aa" Manufacturer="Me" InstallerVersion="200" />
    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="MergeRedirectFolder">
        <Component Id="Test_ModuleComponent" Guid="{1081C5BC-106E-4b89-B14F-FFA71B0987E1}">
          <File Id="Test" Name="$(var.Project.TargetFileName)" Source="$(var.Project.TargetPath)" DiskId="1" />
        </Component>
      </Directory>
    </Directory>
  </Module>
</Wix>

И я добавил проект "Project" в качестве ссылки на этот модуль слияния, однако я продолжаю получать эту ошибку

Ошибка 7 Неопределенная переменная препроцессора '$ (Var.Project.TargetFileName).

Любые предложения, я уверен, что я просто упускаю очевидное здесь.

1 Ответ

2 голосов
/ 12 февраля 2009

Хорошая практика требует, чтобы вы всегда предполагали, что это ваша проблема, и она не является ошибкой, но после большого количества потраченного времени я хотя бы просто проверил, и, похоже, это может быть потому, что это не поддерживается для C ++ проекты (какой у меня)

со страницы WIX3 об ошибке

Дата: 2008-10-17 14:53 Отправитель: jasongin Любой проект C ++ не является MSBuild. C ++ проекты в VS используют другая система проектов, которая более трудно взаимодействовать с. Это почему Votive v3 пока не поддерживает ссылки на проекты C ++. Мы знаем Ссылки на проекты C ++ являются важными особенность, но это еще не сделано. работа отслеживается по запросу 1585281.

Это запрос открытой функции .. но, кажется, уже давно, поэтому не уверен, будет ли он когда-либо исправлен: - (

...