Модуль слияния WIX:Попытка использовать $(var.Project.TargetFileName)

StackOverflow https://stackoverflow.com/questions/542832

  •  23-08-2019
  •  | 
  •  

Вопрос

Я создал простой модуль слияния 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>

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

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

Есть какие-либо предложения, я уверен, что здесь просто не хватает очевидного.

Это было полезно?

Решение

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

Из WIX3 страница отчета об ошибке

Дата:2008-10-17 14:53 Отправитель:Jasongin любой проект C ++ не является MSBuild.Проекты C ++ в VS Используйте другую проектную систему, с которой сложнее взаимодействовать.Вот почему Vative V3 еще не поддерживает ссылки на проекты C ++.Мы знаем, что ссылки на проект C ++ - важная функция, но это еще не сделано.Работа отслеживается по запросу функции 1585281.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top