重複の可能性:
コンパイル済み実行可能ファイルへの DLL の埋め込み
C# でスタンドアロン プログラムを作成したいのですが、参照されている dll があるため、bin/release/.exe から exe をコピーすることはできません。exe と dll の両方をコピーする必要があります。
ユーザーがexeとdllの両方ではなく、exeをダウンロードして実行できるようにしたい. スタンドアロンとは、インストーラーなしで exe のみを意味します。
重複の可能性:
コンパイル済み実行可能ファイルへの DLL の埋め込み
C# でスタンドアロン プログラムを作成したいのですが、参照されている dll があるため、bin/release/.exe から exe をコピーすることはできません。exe と dll の両方をコピーする必要があります。
ユーザーがexeとdllの両方ではなく、exeをダウンロードして実行できるようにしたい. スタンドアロンとは、インストーラーなしで exe のみを意味します。
ILMERGEを見てください(そしてダウンロードしてください):
ILMerge は、複数の .NET アセンブリを単一の .NET アセンブリにマージするためのユーティリティです。実行可能ファイルと DLL で同様に機能し、出力の処理と形式を制御するためのいくつかのオプションが付属しています。詳細については、付属のドキュメントを参照してください。
または、 ClickOnceなどの他の展開オプションを見てください。
ClickOnce は、ユーザーが Web ページのリンクをクリックして Windows アプリケーションをインストールおよび実行できるようにする Microsoft テクノロジです。(このようなアプリケーションはスマート クライアントと呼ばれます。) ClickOnce は、Microsoft .NET Framework 2.0 以降のコンポーネントであり、Windows フォームまたは Windows Presentation Foundation で作成されたアプリケーションの展開をサポートします。
3 番目のオプションは、インストーラーを作成することです。セットアップ プロジェクトまたはサード パーティのインストーラー (多数あります) を使用します。
dll をリソースとして実行可能ファイルに埋め込みます。
AppDomain.CurrentDomain.AssemblyResolve
イベントに添付し、
イベントで、リソースから dll を読み取り、それを返します。