前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Windows窗体应用类型的差异区别

Windows窗体应用类型的差异区别

作者头像
meteoric
发布2023-01-13 11:27:11
8340
发布2023-01-13 11:27:11
举报
文章被收录于专栏:游戏杂谈游戏杂谈

最近在写小工具的时候,遇到一个坑点,项目的Debug/Release目录下一直有一个文件:项目名.runtimeconfig.json,还无法删除!删除了exe就跑不起来。

我写一个小工具,2M以内,希望双击EXE进行操作就好了。如果还要依赖dll和json,用起来不就很抓狂么,移动exe还得绑定dll和json,这就太麻烦了。

创建项目的时候如果类型选下面的“Windows窗体应用”,默认使用的 .Net Framework是5.0,就会一直生成 “项目名.runtimeconfig.json”文件

image
image

建议选上面这个 .NET Framework的模板,默认是4.7.x版本,这样就不会生成那个烦人的json(里面也就是一行关于.net运行环境的版本配置,其它啥都没有)

image
image

这二者有什么区别呢,我在使用过程中发现二个问题:

1、Dictionary 类在 5.0 中有 TryAdd方法,而4.7中没有,得改用 ContainsKey 先去检测一下;

2、Application.StartupPath返回的路径(当前 exe 所在的目录),5.0自带文件夹分隔符,而 4.7没有,需要再加上 Path.DirectorySeparatorChar;

目前暂时就发现这二个问题,其它代码 copy 过来能正常跑起来。

需要的插件通过 NeGet进行安装,不过需要注意在安装 Costura.Fody时,版本不要选最新的,选4.x与当前的 .NET Framework版本匹配。

image
image

这样在 Debug/Release 下生成的 exe 就能直接导出给其它同事进行使用了,无须其它依赖。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-01-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档