WPF 基於 .NET 5 框架和 .NET 6 的 SDK 進行完全單文件發布


本文來告訴大家如何基於 .NET 5 框架和 .NET 6 SDK 進行完全單文件發布,這是對 WPF 應用程序進行獨立發布,生成的是完全單文件的方法

在之前的版本,盡管也是基於 .NET 5 框架的 WPF 應用,然而在 .NET 5 的 SDK 下,除非是采用框架依賴的方法,否則大部分應用發布作為單文件將會運行失敗。在 .NET 6 的 SDK 下,官方修復了一些文檔,對於大部分 WPF 應用程序來說,可以在 .NET 6 的 SDK 下,可以發布為完全的單文件

發布方法是在參數加上 -p:PublishSingleFile=true-p:IncludeNativeLibrariesForSelfExtract=true 兩個參數

dotnet publish -r win-x86 -c release -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true

用此方法的要求是,如果在 WPF 的 XAML 或者業務邏輯里面,有用到 Content 的內容都需要進行更改,有使用到當前應用程序所在文件夾附近的其他的文件的邏輯,也需要進行更改。畢竟是單文件發布,也只有一個文件

更改的方法是將原本的讀取文件的邏輯,放入到程序集里面,通過程序集讀取

當前的 WPF 暫時不支持裁剪的功能,完全單文件無框架依賴發布的空應用有 130M 左右

Single file application - .NET


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM