工作原理:很简单地说,运行Version.exe生成一个"version.h"头文件,文件的内容如下:
#ifndef VERSION_H_INCLUDED
#define VERSION_H_INCLUDED
#define VERNUM "1.0.0"
#define BUILDNUM "0"
#define BUILDTIME "2011-12-13 09:50:58"
#endif
将version.h文件包含到你的工程代码中,在需要的地方直接调用VERNUM,BUILDNUM,BUILDTIME即可,将Version.exe加入到IDE工程选项中编译前运行的程序栏,这样每次执行编译时将自动调用Version.exe,自动将BUILDNUM的值递增,同时将当前时间替换掉BUILDTIME的内容。
使用方法:
一、在MDK环境下:
1.解压缩后将Version.exe复制到MDK工程的源文件目录下,比如:../Source/Version下,记下此路径。
2.打开MDK项目,在User标签下的“Run User Program Before Build/Rebuild"栏选择Version.exe所在的路径"..\Source\Version\Version.exe",Run #1前的框打上√。
3.在C/C++标签下的Include Paths中加入Version.exe所在的目录"../Source/Version"
4.在C源码中#include "version.h",在需要显示版本号的地方调用BUILDNUM等需要的值,比如printf("Version %s Build %s @ %s",VERNUM,BUILDNUM,BUILDTIME);即可。
项目设置
二、在STVD环境下:
1.解压缩后将Version.exe复制到STVD工程的源文件目录下,比如:../Source/Version下,记下此路径。
2.双击运行一下Version.exe,生成version.h,将version.h加入到工程中。
3.在Project Settings中Pre-Link标签下的Commands文本框中将Version.exe的路径加上去,如图:
STVD设置
4.在C源码中#include "version.h",在需要显示版本号的地方调用BUILDNUM等需要的值,比如printf("Version %s Build %s @ %s",VERNUM,BUILDNUM,BUILDTIME);即可。
另:Version.exe有一个参数-v可指定VERNUM的值,如果不指定则默认为1.0.0,并且VERNUM的值不会自动改变,变的只是BUILDNUM和BUILDTIME。-v参数的使用:
../Version.exe -v xxxxxxxx
其中xxxxxxxx为任意字符串,没有限定长度和格式,可以是2.0.1,也可以是abcdefg等等。
软件回复可见
——回复可见内容——