2

VS 2005 でシンプルな Wix 3 Merge Module を作成しました ( .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)'。

何か提案があれば、ここで明らかなことを見逃していると確信しています。

4

1 に答える 1

2

これは自分の問題であり、バグではないと常に想定することをお勧めしますが、多くの時間を無駄にした後、チェックするだけで、C++ プロジェクトではサポートされていないことが原因のようです (私のは)

WIX3バグレポートページより

日付: 2008-10-17 14:53 送信者: jasongin すべての C++ プロジェクトは MSBuild ではありません。VS の C++ プロジェクトは、相互運用がより困難な別のプロジェクト システムを使用します。そのため、Votive v3 はまだ C++ プロジェクトへの参照をサポートしていません。C++ プロジェクト参照が重要な機能であることはわかっていますが、まだ完了していません。この作業は、機能要求 1585281 によって追跡されます。

これはオープンな機能リクエストです..しかし、今では長い間そうであるように思われるので、修正されるかどうかはわかりません:-(

于 2009-02-12T19:45:35.197 に答える