0

私の DTF プロジェクトにはいくつかの埋め込みリソースが含まれており、CustomAction で同じリソースにアクセスしたいと考えています。

カスタムアクションメソッドで次のコードを試しました

// Gets the current assembly.
Assembly Asm = Assembly.GetExecutingAssembly();

// Resources are named using a fully qualified name.
Stream strm = Asm.GetManifestResourceStream(Asm.GetName().Name + "." + Name);

ただし、Asm は常に Wix セットアップ アセンブリを参照し、リソースを含むカスタム アクション dll を参照しないため、これは機能しません。

4

2 に答える 2

0

正直なところ、このシナリオが可能かどうかはわかりません。つまり、アセンブリを実行するカスタム アクションを取得し、そこからリソースを抽出するオプション (または簡単なオプション) がない可能性があります。

この代わりに、ソリューションを再設計し、リソースを MSI パッケージのBinaryテーブルに移動しようとしました。したがって、リソースは引き続き埋め込まれますが、CA DLL ではなく、MSI パッケージ自体に含まれます。DTF.chm ヘルプ ファイルには、バイナリ テーブルからファイルを抽出する方法のサンプルが含まれています。これは、数行のコードの問題です。

于 2013-05-24T11:06:05.363 に答える