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

1 :

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

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

====================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);

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());

修改或者新增,可以理解为 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# 桌面软件开发-深入学习[2]- AY-C#人爱学不学-aaronyang技术分享的更多相关文章

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

    原文:C# 桌面软件开发-深入学习 [1]- AY-C#人爱学不学-aaronyang技术分享 曾经我做office,不想依赖别人dll,就使用了 Type.GetTypeFromProgID 可以根 ...

  2. AY写给国人的教程- VS2017 Live Unit Testing[1/2]-C#人爱学不学-aaronyang技术分享

    原文:AY写给国人的教程- VS2017 Live Unit Testing[1/2]-C#人爱学不学-aaronyang技术分享 谢谢大家观看-AY的 VS2017推广系列 Live Unit Te ...

  3. AY写给国人的教程- VS2017 Live Unit Testing[2/2]-C#人爱学不学-aaronyang技术分享

    原文:AY写给国人的教程- VS2017 Live Unit Testing[2/2]-C#人爱学不学-aaronyang技术分享 谢谢大家观看-AY的 VS2017推广系列 Live Unit Te ...

  4. Mac 桌面软件开发基础问答

    1> Mac OS X平台下的桌面软件是由什么编程语言处理 答: 由Objective-C, swift编程语言处理 2> Mac OS X平台下的桌面软件是由什么框架构建 答: 由Coc ...

  5. nw.js桌面软件开发系列 第0.1节 HTML5和桌面软件开发的碰撞

    第0.1节 HTML5和桌面软件开发的碰撞 当我们谈论桌面软件开发技术的时候,你会想到什么?如果不对技术本身进行更为深入的探讨,在我的世界里,有这么多技术概念可以被罗列出来(请原谅我本质上是一个Win ...

  6. AY的Dapper研究学习-继续深入-C#开发-aaronyang技术分享

    原文:AY的Dapper研究学习-继续深入-C#开发-aaronyang技术分享 ====================www.ayjs.net       杨洋    wpfui.com      ...

  7. AY的Dapper研究学习-基本入门-C#开发-aaronyang技术分享

    原文:AY的Dapper研究学习-基本入门-C#开发-aaronyang技术分享 ====================www.ayjs.net       杨洋    wpfui.com      ...

  8. 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子

      本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...

  9. 拿到这份 Java、C++ 软件开发完整学习路线图,我面试再也没挂过..

    大家好,我是柠檬. 柠檬哥作为一个普通大学.非计算机专业,自学后端技术进入腾讯做后端开发工作,我自己也是非科班自学计算机成功转行软件开发(有想听柠檬哥转行之路经历的吗,可以留言告诉我,人多就写写),体 ...

随机推荐

  1. USB 3.0规范中译本 第8章 协议层

    本文为CoryXie原创译文,转载及有任何问题请联系cory.xie#gmail.com. 协议层管理设备及其主机之间端到端的数据流.这一层建立在链路层提供对某些类型的包的保证传输(guarantee ...

  2. jquery中的this与$(this)的区别总结(this:html元素)($(this):JQuery对象)

    jquery中的this与$(this)的区别总结(this:html元素)($(this):JQuery对象) 一.总结 1.this所指的是html 元素,有html的属性,可用 this.属性  ...

  3. 解析C#内存管理

    C#内存管理解析 前言:对于很多的C#程序员来说,经常会很少去关注其内存的释放,他们认为C#带有强大的垃圾回收机制,所有不愿意去考虑这方面的事情,其实不尽然,很多时候我们都需要考虑C#内存的管理问题, ...

  4. 使用Fernflower 比较准确的反编译整个java项目

    以前一直使用jd-gui.exe  ,都说是最好用的,但是编译总是有问题,还得修改,使用idea 后,感觉反编译的相当好,看注释是 Fernflower,然后参考 http://the.bytecod ...

  5. Qt 连接MySQL数据库(很多相关文章)

    今天想试试Qt如何连接数据库的. 谁知怎么写完了提示driver not loaded我就郁闷了. 我自己是 VS2010 + Qt4.8.4 + MySQL5.1 的环境 网上查到是 C:\Qt\4 ...

  6. 快来看看Google出品的Protocol Buffer,别仅仅会用Json和XML了

    前言 习惯用 Json.XML 数据存储格式的你们,相信大多都没听过Protocol Buffer Protocol Buffer 事实上 是 Google出品的一种轻量 & 高效的结构化数据 ...

  7. java使用mongoDB和freemarker注意事项

    mongoDB和关系数据库的差异最大的优势就是表结构不正确,说:.弱事务.mongoDB以牺牲换来的交易进行更快的访问速度,有人说mongoDB对于内存太贪婪,事实上,它不会.随着windows版本, ...

  8. 输入框改变placeholder字体颜色

    ::-webkit-input-placeholder {  color: red;}:-moz-placeholder {  color: red;}::-moz-placeholder{color ...

  9. sparksql json 合并json数据

    java public class Demo { private static SparkConf conf = new SparkConf().setAppName("demo" ...

  10. 阿里云centos7.2自己安装mysql5.7远程不能访问解决方案

    版权声明:转载也行 https://blog.csdn.net/u010955892/article/details/72774920 最近,无意中看到阿里云服务器降价,所以一时手痒,买了一年的服务器 ...