2016-08-05 8 views
0

インストーラをビルドする必要があります。さまざまな理由から、私はWiXプロジェクトテンプレートの使用を避けたいと考えています。私はこのようなものを自分自身でスクリプト化することができてとてもうれしく、このためにカスタムビルドプロセスを既に持っています。wixファイルに熱の出力を含めるにはどうすればいいですか? (Visual Studioプロジェクトなし)

私はWiXキャンドル、ヒートライト、ライトツールの役割をよく理解していると思いますが、wxsファイルフォーマットに精通しています。私はそれを私のwxsファイルにどのように組み込むのか分かりません。おそらく、ある時点で、wxsのファイルフラグメントファイルへの参照がありますが、正しい構文が何であるかは分かりません。あなたがターゲットディレクトリ構造を記述あなたのWXSファイルで

答えて

3

、このように、TARGETDIR下のディレクトリノードを追加します。

<Directory Id="TARGETDIR" Name="SourceDir"> 
    <Directory Id="DYNAMIC" Name="Dynamic"> 

あなたの機能のために参照されるコンポーネントをリストし、あなたのWXSファイルで、コンポーネントグループを追加参照:このような

<Feature Id="MyFeature"> 
    <ComponentGroupRef Id="MyComponentGroup"/> 

通話熱(あなたの空想に多くのパラメータを追加):

"C:\WIX\bin\heat.exe" dir "C:\SourceDir" -cg MyComponentGroup -ke -srd -dr DYNAMIC -sfrag -o "C:\MyProject\Dynamic.wxs" 

このDynamic.wxsをキャンドルコールに追加します。 Light呼び出しに結果(wixobj)を追加します。

+0

質問内のファイルまたはフラグメントポイントを参照するアドレッシングは、全体としては参照しません。 'ComponentGroupRef'のように、それが含んでいる要素を参照するだけです。もちろん、ファイルをソースとして渡します。 –

+0

ありがとう、私は思う*私はそれを動作させる方法を考え出し、あなたは私を助けました。今私は完全な質問を持っている:http://stackoverflow.com/questions/38858803/invalid-defaultdir-when-running-light-in-wix –

関連する問題