dotnet core如何编译exe

时间:2023-02-02 15:24:35

dotnet core 有一个转变,他用dll格式来代替exe作为通用执行格式,然后要命令行dotnet yourApp.dll 来运行程序。为了提高逼格,双击可以运行,可以采用以下方案:

方案一 用bat文件

可以编写一个bat来执行,如mylib.bat文件内容:

@dotnet mylib.dll

@pause

方案二 发布指定运行环境

用命令行:dotnet publish -f netcoreapp2.1 -c release -r win-x64

其中-f 指定框架,-r 指定运行环境。发布后会产生一个60多m的目录。其中publish子目录携带了整个dotnet core 框架,可以复制到指定的系统环境中执行(据说还需要安装vc++ 2015的运行时)。

辣么大,当然不是我们希望的,我们需要的只是exe文件格式而已。经测试,发布目录去除publish子目录,剩余1m多点的exe相关文件,是可以运行的,前提是安装了相关dotnet core 框架。

补充说明

用虚拟机测试了一下。在winxp中会提示不是有效的32位程序,netcore不支持winxp,微软这个奸商。

官方资料显示最低支持win7,然后安装win7 sp1 x64 ,还是不能直接运行,会提示加载不了dll,百度一下,经测试是缺乏一个补丁:Windows6.1-KB2533623-x64.msu

下载:博客园主站

微软:https://www.microsoft.com/zh-CN/download/details.aspx?id=26764

好吧,微软总是会给你制造点麻烦。