2026年7月12日日曜日

WPFで単一exeのアプリを作成する方法

WPFアプリを単純にビルドするとすごい数のDLLが含まれる。

発行のオプションに「単一ファイルの作成」があるが、これだけだとまだいくつかDLLの残る。それらも全て含めてひとつのexeを作る手順。


ソリューションエクスプローラー > プロジェクト右クリック > 発行

> ターゲット/フォルダ

> 特定のターゲット/フォルダ > 場所 > 完了

>「公開準備が完了しました。」

> [すべての設定を表示]をクリック

【重要】 [配置モード]は[フレームワーク依存]にすること

 [ターゲットランタイム]を[移動可能]から特定環境指定に変更

> [ファイル公開オプション]が表示される

> 展開 > [単一ファイルの作成] をチェック

> 発行

次の警告が出る場合は、メッセージとおりプロジェクトのcsprojの<PropertyGroup>にメッセージにある設定を追加する。

2>'インターセプター' 機能は、この名前空間では有効になっていません。
プロジェクトに
'<InterceptorsNamespaces>$(InterceptorsNamespaces);Microsoft.Extensions.Configuration.Binder.SourceGeneration</InterceptorsNamespaces>'

 を追加します。


これだけだといくつかdllが出力される。これもexeに含める場合は、ソリューションエクスプローラーでFolderProfile.pubxml に次の一行を追加   

Project>Properties>PublishProfiles>FolderProfile.pubxml 

<IncludeNativeLibrariesForSelfContained>true</IncludeNativeLibrariesForSelfContained>

(cs.projのPropertyGroupに追加してもよい。)


0 件のコメント:

コメントを投稿