2011-01-13 13 views
3

私は.NETソリューションのインストーラをビルドするためにWix/Votiveを使用しています。私は他のプロジェクト(EXEとDLL)のバイナリをプロジェクト参照(内部ではheat.exeと思っています)を使ってインクルードします。Wixとプロジェクト参照を使用してネイティブイメージ(NGen)を展開する方法

私が今やりたいことは、インストール中にngen.exeのすべてのアセンブリをプレジャットすることです。ウィックスのヘルプによると、これはスルー行うことができますWiX .NET extensions library

<Component Id="App.exe" Guid="PUT-GUID-HERE"> 
    <File Id="App.exe" Source="App.exe" KeyPath="yes"> 
     <netfx:NativeImage Id="ngen_App.exe" Platform="32bit" Priority="0" /> 
    </File> 
</Component> 

さて問題です、<File />タグがheat.exeによって作成され、私はどちらか<NativeImage />を生成するheat.exeに助言する方法を見つけ出すことができません生成した<File />タグを参照する方法と、<NativeImage />タグを外部から添付する方法があります。

私が見る唯一の方法はプロジェクト参照を使用することではありませんが、明らかに私はそれらを保持したいと思います。

提案がありますか?ありがとう!

答えて

3

ヒートはこのストーリーを意図したものではありません。ほとんどの人はWXSを作成してそこからコードとして維持するという大々的な作業を一度行うためにHeatを一度使用します。このプロセスをプロセスに組み込んで動的にすることを望む人もいますが、関心がある場合は他の場所で見つけることができる理由から実際に反対しています。

LINQ to XML(またはお気に入りのXML DOM)を使用して.NETアセンブリであるFile要素を検索し、子のNativeImage要素でマークアップするようにするか、いくつかの自動化を実行するようにしてください。また、名前空間の宣言をドキュメントの先頭に置く必要があります。

関連する問題