vs2022开发.net窗体应用开发环境安装配置以及程序发布详细教程

文章目录

一、安装visual studio

1.1推荐win10操作系统

1.2推荐vs2022

社区版、专业版、企业版都可以

社区版免费,能满足大部分开发需求

如果是专业版可以尝试key【TD244-P4NB7-YQ6XK-Y8MMM-YWV2J】

如果是企业版可以尝试key【VHF9H-NXBBB-638P6-6JHCY-88JWH】

复制代码
# 下载地址
https://visualstudio.microsoft.com/zh-hans/downloads

1.3选择工作负载

vs2019,vs2022都是用的在线安装,下载到本地的是一个安装器,叫VisualStudioSetup.exe

如果是.net和c++桌面开发,要选以下三个工作负荷:

  • .NET桌面开发
  • 使用c++的桌面开发
  • Windows应用程序开发
    如果是web端开发,还需要在勾选上ASP.NET和Web开发

后面如果少组件可以通过运行安装器,选择"修改",再来配置,很方便。

二、新建基于.net的winform应用程序

2.1为什么要.net

自2016年开始,微软发布跨平台版本的.NET框架时,它作为经典.NET Framework的跨平台版本,被称之为.NET Core,.NET Core延续到3.1版之后,被改名为.NET 5,然后就是后来的6、7、8、9等各个版本。

刚刚我们安装的vs2022默认对应.net9 SDK,虽然说.net core/5/6/7/8/9是跨平台的,但是基于.net5/6/7/8/9和.net framework的桌面应用不能跨平台,可以简单这么理解只有.net控制台应用或者ASP.net Web应用跨平台,而winform和WPF只能在windows平台上运行。

那传统基于.net framework开发的winform和WPF有必要升级到.net吗?

当然有必要。我认为有两点原因,一方面可以使用.net的新特性,另一方面基于.net的应用可以独立发布,不需要目标PC安装任何.net framework或其他系统级别的组件。

就单单第2点就已经很香、很激动了。

2.2 新建.net窗体应用

2.2.1 选择Window窗体应用

不要选成.net framework了

2.2.2 .net窗体对比framework窗体

我在一个解决方案下新建了两个工程如下,.net默认的工程名称是WinFormsApp,framework默认的工程名称是WindowsFormsApp,有点晕啊,傻傻分不清楚。

左上角的icon颜色也不一样,.net的直接就是黑白色,更有科技感。🆒

三、发布.net应用

在项目上右键,选择"发布"

进入发布对话框后

  • 1.显示所有设置

  • 2.部署模式:独立(这样就不依赖.net运行时,在目标PC上双击exe就能运行,不需要目标PC上安装.net框架了!!!)

  • 3.生成单个文件,如果勾上的话,.net运行时那些文件会打包进exe中

不过独立部署的时候,单个文件也勾选上,这样exe就很大有150M左右,还什么代码都没有写。

终于.net应用不需要目标PC也安装同样的.net framework了。

相关推荐
时光追逐者2 小时前
2026 年 .NET 客户端常用 MVVM 框架推荐
c#·.net·mvvm·.net core
月昤昽3 小时前
C#实现AutoCAD旋转与直径标注
c#·.net·二次开发·autocad·autocad二次开发
专注VB编程开发20年4 小时前
专业分析python底层调用与按键精灵,ah3等的对比,hookdll,内存加载,调用.net dll
开发语言·javascript·python·microsoft·php·.net
djk88884 小时前
.net swagger api 开启跨域 开启注释
java·前端·.net
我是唐青枫5 小时前
C#.NET YARP 详解:用 ASP.NET Core 打造高性能反向代理网关
c#·.net
OctShop大型商城源码19 小时前
.NET线上商城源码_C#商城源码_技术赋能下的电商新生态
开发语言·c#·.net·商城系统源码
柠檬苏打z1 天前
C# SwaggerLoginAuthPlugin 一款给Swagger文档加登录页面的小插件
.net·swagger
追逐时光者1 天前
2026 年 .NET 客户端常用 MVVM 框架推荐
后端·.net
唐青枫1 天前
C#.NET YARP 详解:用 ASP.NET Core 打造高性能反向代理网关
c#·.net
李少兄1 天前
解决 java.net.ConnectException: Connection refused 报错
java·开发语言·.net