5

重複の可能性:
コンパイル済み実行可能ファイルへの DLL の埋め込み

C# アプリケーションを単一の exe ファイルにコンパイルしたいと考えています。問題は、私のプロジェクトが他の多くのプロジェクトに依存しているため、Releaseコンパイルするとフォルダー内に多くの dll が作成されることです。これらのdllを含めてexeを作成する方法はありますか?

注: .NET フレームワークから独立している必要はありません。このexeを使用している人は誰でもそれをインストールしていると思います。

4

3 に答える 3

9

.NETには、複数のアセンブリを1つのファイルにまとめてパッケージ化できるILMergeというツールが付属しています。次のように使用します。

ilmerge /target:winexe /out:myoneexecutable.exe Foo.exe Bar1.dll Bar2.dll
于 2012-06-19T14:34:45.010 に答える
2

ILMerge は 1 つのオプションですが、WPF アセンブリをマージすることはできません。アセンブリをリソースとして埋め込み、動的に読み込むことができます。このリヒターの記事を参照してください。

于 2012-06-19T14:39:09.380 に答える
0

単一の実行可能ファイルにコンパイルできるようになるのに最も近いのは、VisualStudioのセットアッププロジェクト機能/ウィザードを使用して標準のMSIパッケージを生成し、それを使用してアプリケーションを配布することだと思います。

ただし、すべてを1つのファイルにまとめることができるサードパーティのツールが利用できる場合もあります。しかし、これによって標準のMSIアプローチを超えるものが得られるとは思いません。実際、これはビルドプロセスの追加の手動ステップであり、厳密には必要ありません。

于 2012-06-19T14:35:20.117 に答える