pb获取软件编译日期(时间)的快捷方法
来源:互联网 发布:淘宝怎么开直播视频 编辑:程序博客网 时间:2024/04/28 08:37
在用PB开发软件时,有时候需要根据日期来生成软件的版本号。比如软件的版本为V5,为了体现同一版本软件在不同日期下编译生成的版本差异化,我们有时候会在软件的版本后面加上build和日期,类似于这样:V5 build20110727 ,表示该软件的版本是V5,编译日期时2011-07-27 。
【V5 build】这一字符串在很长一段时间内基本上是固定的,但是【20110727】这一日期串是经常变动的。如何实时的添加这个日期串呢?
常规的做法有两种。
一、每次编译之前,手动更改该日期串为编译当日的日期。这种做法很简单,但是更改的步骤容易被我们遗忘。
二、通过API函数在软件运行过程中,动态获取软件exe文件的最后修改日期(获取方面可以参考我的博客:PB获取和设置文件最后修改日期的API方法 ),再赋值给日期串。这种做法比较复杂,需要了解API(当然封装成自定义对象后,使用起来也不会太麻烦),但是它能避免手动修改的易遗忘,保证每次编译后都能准确取到最后的编译日期。
本文所要介绍的这种方法,思路与上面的第二种有点类似,都是取软件编译日期,但是实现起来却是跟第一种方法一样简单,也不需要使用API函数。具体的做法如下:
string ls_ver = "V5 build" + string(today(), "yyyymmdd") //编译后 ls_ver里面存储的值就是【V5 build加上编译的日期 】了
其实就是这么简单。由于变量的初始值是在编译时形成的,因此,对于上面我们声明的string类型变量 ls_ver 来说, 软件编译时,会自动获取编译时的日期,并将编译时的日期赋值给 ls_ver 。
假设软件是在2011-07-27编译的那么上面的变量初始化赋值语句,等同于:
string ls_ver = "V5 build20110727”
其实也可以将这种思路理解为跟第一种方法类似,只是将“编译前手动更改该日期串为编译当日的日期”,自动化为“编译时自动更改该日期串为编译当日的日期”。
上面介绍的取编译日期的方法,只是一个很小的功能,但是对于我们程序员来说,它给了我们很多的启迪,我们可以按照这种思路,炮制出一大堆的应用。比如:取软件编译时的电脑名称、IP地址、网卡地址、操作系统信息等等。
希望我的这种做法,能够起到抛砖引玉的作用。
另外大家可以看看这个贴子:pb全局静态变量编译后,存储在哪?
- pb获取软件编译日期(时间)的快捷方法
- 获取日期时间的方法
- javascript获取当前日期时间的方法
- C++获取当前日期时间的方法
- 获取系统日期时间的简单方法
- 获取系统日期时间的简单方法
- java获取当前日期时间的方法
- 获取当前日期时间字符串的方法
- pb获取服务器日期
- Linux获取时间日期方法
- PB获取服务器时间
- 日期,时间的获取(ios)
- Javascript获取当前时间和日期的方法
- JSP获取服务器当前日期时间的方法
- 获取SQL Server日期而不包括时间的方法
- java获取当前时间和日期的方法
- JDBC Resultset获取日期时间型的几种方法
- JDBC Resultset获取日期时间型的几种方法
- 深入探讨 Java 类加载器
- Visual Studio 2008中安装mvc2.0问题排解
- JNA
- 在UBUNTU10.04上安装MATLAB R2011a并使用菜单启动
- 如何解决DbUnit的Maven插件在执行过程中出现的侵犯外键约束错误(MySQLIntegrityConstraintViolationException)
- pb获取软件编译日期(时间)的快捷方法
- c#操作word
- visual C++ 6.0开发工具与调试
- asp.net 动态加载 iframe 改变iframe的src
- 关于js获取父窗体息信的相关方法
- how to deploy webservice onto web application at websphere 6.1
- 两表联合更新 update from
- android手机开发-资料集合
- 在SQL分组统计中怎么求出:A列最大值(MAX)对应行B列的值 未验证