Press "Enter" to skip to content

在使用.NET Core时,打包成无依赖的单应用程序

背景

最近在用c#写一些小程序,开发编译都没问题,开发出来的东西也很小几百kb。

但是在将程序分发给别人用的时候,问题就来了。用户打开程序的时候会提示缺少.net framework运行环境,比较麻烦。。

如下错误:

You must install .NET to run this application.

Architecture: x64
App host version: 6.0.11
.NET location: Not found

Learn about runtime installation:
https://aka.ms/dotnet/app-launch-failed

Download the .NET runtime:
https://aka.ms/dotnet-core-applaunch?missing_runtime=true&arch=x64&rid=win81-x64
&apphost_version=6.0.11

解决问题

了解如何使用 .NET Core 中的一项新功能轻松创建一个完全独立的 EXE 应用程序。

.NET Core 3.0 中的一项很酷的新功能是您可以轻松构建包含整个应用程序的单个 EXE 文件。 合并后的 EXE 将包含所有 .NET Core 文件,这意味着您无需在客户端计算机上安装任何东西。

您不必知道是否也安装了特定的框架(application requires one of the following versions of .NET Framework)。 我相信对于需要在多台机器上运行他们的应用程序并且不知道安装了什么的人来说,这是一个很酷的功能。 支持人员也可以从中受益,例如,当他们需要在客户端机器上测试特定版本时。

最新的 Visual Studio 2019 预览版中,不再需要使用命令,您可以从 UI 执行此操作。 首先,右键单击该项目,然后单击发布,然后选择文件夹并单击创建。

一路下一步,完成,你会来到一个发布页面:

点击后面这个小笔来修改配置:

最后保存,点击发布按钮,你就可以在你配置的目标位置生成一个没有任何依赖的单独的可执行的exe文件了!

参考资料:

https://www.telerik.com/blogs/creating-a-single-exe-application-with-net-core

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注