2

このような出力全体のフラグメントを作成しました

"%WIX%\bin\heat" dir ..\Output -nologo -suid -srd -sfrag -ag -wx -dr "INSTALLFOLDER" -var var.OutputDir -out ..\FreePIE.Setup\main.wxs

Product.wxs からこれを使用するにはどうすればよいですか?

ドキュメントは、Heatの使用方法について非常に曖昧です

編集: ビルドすると、もう少し進んだ(msbuildを使用)

msbuild ..\FreePIE.Setup\FreePIE.Setup.wixproj

私は得る

未定義のプリプロセッサ変数 '$(var.OutputDir)'。

編集:Candleとlight exeを使用した最終的な解決策

  <Target Name="Candle">
    <Exec WorkingDirectory="$(InstallerTemp)" Command="&quot;$(WIX)\candle.exe&quot; -dOutputDir=&quot;..\Output&quot; -dVersion=&quot;$(Version)&quot; -dProductName=&quot;FreePIE&quot; $(InstallerTemp)\Main.wxs $(InstallerTemp)\Output.wxs"/>
  </Target>

  <Target Name="Light">
    <Exec WorkingDirectory="$(InstallerTemp)" Command="&quot;$(WIX)\light.exe&quot; -ext WixUIExtension -ext WiXNetFxExtension -out FreePIE.$(Version).msi $(InstallerTemp)\Main.wixobj $(InstallerTemp)\Output.wixobj"/>
  </Target>

Main.wsx は主な定義を保持し、Output.wxs は熱によって生成された wsx を保持します。-dOutputDir= フラグを設定する

完全なソリューションについては、 https://github.com/AndersMalmgren/FreePIE/tree/master/BuildToolsを参照してください。

すべてのロジックを呼び出すバッチは https://github.com/AndersMalmgren/FreePIE/blob/master/BuildTools/build_installer.batです

4

1 に答える 1

0

次に行う必要があります。

  1. プロジェクトに Preprocessor 変数を追加します。Project-> Properties->Build OutputDir=my path

  2. コマンドにグループ名を追加します-cg MyFilesGroup

  3. MyFilesGroup を製品機能に追加する

    <Feature Id=ProductFeature" Title="$(var.ProductName)" Level="1">

    <ComponentGroupRef Id="MyFilesGroup"/>

    </特集>

于 2013-02-10T15:42:07.717 に答える