C# 桌面软件开发-深入学习[2]- AY-C#人爱学不学-aaronyang技术分享

简介: 原文:C# 桌面软件开发-深入学习[2]- AY-C#人爱学不学-aaronyang技术分享1 :C#Assembly.GetEntryAssembly().GetName().Version.ToString()获得值是2.1.0.0   版本这东西,做升级,错误记录 都会有用的。
原文: C# 桌面软件开发-深入学习[2]- AY-C#人爱学不学-aaronyang技术分享

1 :

C#
Assembly.GetEntryAssembly().GetName().Version.ToString()

获得值是2.1.0.0   版本这东西,做升级,错误记录 都会有用的。

image.png

====================www.ayjs.net       杨洋    wpfui.com        ayui      ay  aaronyang=======请不要转载谢谢了。=========



2:创建ini文件

C#
        [DllImport("kernel32")]
        private static extern long WritePrivateProfileString(string section, string key, string val, string filepath);
C#
    string section = "runVersion";
            string key = "Net45";
            DateTime d = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
            string val = ((long)(DateTime.Now - d).TotalSeconds).ToString();
            string text = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "AY\\Profile");
            if (!System.IO.Directory.Exists(text))
            {
                System.IO.Directory.CreateDirectory(text);
            }
            string filepath = text + "\\runVersion.ini";
            WritePrivateProfileString(section, key, val, filepath);

image.png

section是 块,然后key,value,文件路径


获得ini的操作

接口

C#
        [DllImport("kernel32")]
        private static extern int GetPrivateProfileString(string section, string key, string defVal, StringBuilder retVal, int size, string filePath);

然后调用

C#
   string text2 = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "AY\\Profile\\runVersion.ini");
            StringBuilder sb = new StringBuilder();
            GetPrivateProfileString("runVersion", "Net45", "123", sb,10000, text2);
            MessageBox.Show(sb.ToString());

image.png


修改或者新增,可以理解为 Set值 的一种行为

C#
   string text3 = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "AY\\Profile\\runVersion.ini");
            WritePrivateProfileString("runVersion", "Net45", "888888", text3);
            WritePrivateProfileString("runVersion", "ayui", "7.6.1.8", text3);

            StringBuilder sb1 = new StringBuilder();
            GetPrivateProfileString("runVersion", "Net45", "", sb1, 10000, text3);
            MessageBox.Show(sb1.ToString());

            StringBuilder sb2 = new StringBuilder();
            GetPrivateProfileString("runVersion", "ayui", "", sb2, 10000, text3);
            MessageBox.Show(sb2.ToString());



删除节点,值是null,就删除了

            string text4 = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "AY\\Profile\\runVersion.ini");

            WritePrivateProfileString("runVersion", "Net45", null, text4);


删除块下面的所有值,当然这个块没有值,所以块也是没了

            WritePrivateProfileString("runVersion", null, null, text4);


删除所有块

            WritePrivateProfileString(null, null, null, text4);


====================www.ayjs.net       杨洋    wpfui.com        ayui      ay  aaronyang=======请不要转载谢谢了。=========



以上所有内容都是ay  摸索尝试出来的。


====================www.ayjs.net       杨洋    wpfui.com        ayui      ay  aaronyang=======请不要转载谢谢了。=========

推荐您阅读更多有关于“”的文章

目录
相关文章
|
数据采集 网络协议 物联网
C# | 上位机开发新手指南(一)概述
C#,是微软主推的编程语言。它在工业控制、自动化、物联网等领域应用非常广泛。由于国内在工业控制领域技术发展路径的原因,早期的自动化控制面板由Window环境提供,大量的MFC、VB6控制应用被部署在了工厂车间。在用户习惯和界面环境的双料加持下,给C#在工业领域的推广打下的坚实的基础。使用C#进行上位机开发已经是行业内的主流选择。 如果正在读文章的你准备或正在从事C#的上位机开发,本专栏将会是您在这条路线上的路标。欢迎一同打卡每一个节点。
2930 0
C# | 上位机开发新手指南(一)概述
|
安全 API 数据安全/隐私保护
保姆级图文教程!OpenClaw阿里云/本地1分钟部署+百炼API配置+6大类高级实战Skill及安全避坑指南
2026年,OpenClaw(曾用名Clawdbot)凭借“高扩展性+低门槛部署”成为开源圈现象级工具,GitHub下载排行飙升至第11名。但多数用户部署后陷入“只会陪聊”的困境——核心问题并非大模型能力不足,而是缺少适配场景的高级Skill(技能插件)。如同给智能手机只装系统不装APP,难以发挥真正价值。
1394 14
保姆级图文教程!OpenClaw阿里云/本地1分钟部署+百炼API配置+6大类高级实战Skill及安全避坑指南
|
5月前
|
安全 Linux API
🦞OpenClaw 保姆级图文攻略:阿里云/本地部署+百炼免费大模型API配置+Skill接入+避坑指南
对于零基础新手而言,2026年上手OpenClaw(Clawdbot)的核心关键,一是完成阿里云、MacOS、Linux、Windows11多平台的本地部署与阿里云百炼免费大模型API配置,二是搭建一套逻辑清晰的Skills技能体系。真正决定OpenClaw使用体验的,从来不是模型参数,而是能否安全安装技能、稳定实现联网、将工具接入真实工作流。本文将从多平台部署流程、API配置、核心技能安装、技能筛选、避坑要点等方面,给出保姆级实操指南,解决新手从部署到使用的全流程问题,同时附上常见问题解答,让零基础用户也能快速玩转OpenClaw。
1747 2
|
资源调度 关系型数据库 MySQL
资源池、虚拟机、集群的关系
资源池、虚拟机、集群的关系
|
存储 缓存 编解码
FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放
FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放
FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放
|
存储 Unix Windows
Qt之QNetworkInterface
简述 QNetworkInterface类负责提供主机的IP地址和网络接口的列表。 QNetworkInterface表示了当前程序正在运行时与主机绑定的一个网络接口。每个网络接口可能包含0个或多个IP地址,每个IP地址都可选择性地与一个子网掩码和/或一个广播地址相关联。这样的列表可以通过addressEntries()方法获得。当子网掩码或者广播地址不必要时,可以使用a
2222 0
|
存储 消息中间件 数据采集
StarRocks X Flink CDC,打造端到端实时链路
作为一款全平台极速 MPP 架构,StarRocks 提供了多种性能优化手段与灵活的建模方式,在预聚合、宽表和星型/雪花等多种模型上,都可以获得极致的性能体验。通过 StarRocks 结合 Flink 构建开源实时数仓的方案,可以同时提供秒级数据同步和极速分析查询的能力。同时,通过 StarRocks 主键模型,也可以更好地支持实时和频繁更新等场景。
4468 0
StarRocks X Flink CDC,打造端到端实时链路
nodejs 如何检测端口可用性
nodejs 如何检测端口可用性