vc mfc代码中获得程序资源中版本信息的方法
2010-12-29 10:10
399 查看
http://www.7es.cn/Software_development/124.shtml
vc mfc代码中获得程序资源中版本信息的方法
vc资源编辑可以对应用程序的版本信息进行设定,编译好的执行文件可以在文件属性中看到文件版本、程序版本等版本信息。
一般用户是不太主意文件属性终端的版本信息的,那么如果能让版本信息显示到界面上就直观多了,并且可以统一管理版本信息而不用每次编辑界面。
折腾了一番,写了如下函数,可以获取并返回资源文件中设定的版本号字符串。
CString GetAppVersion()
{
// 获取应用程序路径
TCHAR szAppPath[MAX_PATH] = {0};
::GetModuleFileName(NULL, szAppPath, MAX_PATH);
// 获取版本信息
VS_FIXEDFILEINFO *VInfo;
UINT i;
char *buf;
int ma,mj,r,b;
CString sReturn = "";
i = GetFileVersionInfoSize(szAppPath, 0);
buf= new char[i];
if (GetFileVersionInfo(szAppPath, 0, i, buf) != 0)
{
if (VerQueryValue(buf,_T("\\"),(LPVOID*)&VInfo,&i))
{
ma = VInfo->dwFileVersionMS >> 16;
mj = VInfo->dwFileVersionMS & 0x00ff;
r = VInfo->dwFileVersionLS >> 16;
b = VInfo->dwFileVersionLS & 0x00ff;
sReturn.Format(_T("%d.%d.%d.%d"), ma,mj,r,b);
}
}
delete []buf;
return sReturn;
}
当然,通过类似方法还可以获得更丰富的版本信息,有用到的朋友可以参考自己写下
vc mfc代码中获得程序资源中版本信息的方法
vc资源编辑可以对应用程序的版本信息进行设定,编译好的执行文件可以在文件属性中看到文件版本、程序版本等版本信息。
一般用户是不太主意文件属性终端的版本信息的,那么如果能让版本信息显示到界面上就直观多了,并且可以统一管理版本信息而不用每次编辑界面。
折腾了一番,写了如下函数,可以获取并返回资源文件中设定的版本号字符串。
CString GetAppVersion()
{
// 获取应用程序路径
TCHAR szAppPath[MAX_PATH] = {0};
::GetModuleFileName(NULL, szAppPath, MAX_PATH);
// 获取版本信息
VS_FIXEDFILEINFO *VInfo;
UINT i;
char *buf;
int ma,mj,r,b;
CString sReturn = "";
i = GetFileVersionInfoSize(szAppPath, 0);
buf= new char[i];
if (GetFileVersionInfo(szAppPath, 0, i, buf) != 0)
{
if (VerQueryValue(buf,_T("\\"),(LPVOID*)&VInfo,&i))
{
ma = VInfo->dwFileVersionMS >> 16;
mj = VInfo->dwFileVersionMS & 0x00ff;
r = VInfo->dwFileVersionLS >> 16;
b = VInfo->dwFileVersionLS & 0x00ff;
sReturn.Format(_T("%d.%d.%d.%d"), ma,mj,r,b);
}
}
delete []buf;
return sReturn;
}
当然,通过类似方法还可以获得更丰富的版本信息,有用到的朋友可以参考自己写下
相关文章推荐
- vc mfc代码中获得程序资源中版本信息的方法
- 修改vc程序的.rc资源文件中的版本信息等
- 求VC版本如何利用WMI获得磁盘信息 VC/MFC / 进程/线程/DLL - 社区 community.csdn.net
- VC下MFC程序自删除(自杀)几种方法的实践与探讨
- mfc 中获得本身程序句柄的代码
- VC2012下MFC程序各控件的常用方法
- VC++/MFC程序图标更改方法以及修改程序标题 超级简单啦
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息
- 为 VC6 程序的 Release 版本添加调试信息
- 浅议VC程序中进程间信息交换方法
- VC/MFC 程序最小化后不能还原的原因与解决方法
- VC取程序版本信息
- VC程序采用动态链接库方式且静态链接MFC方法
- VC2005编译的MFC程序提示“由于应用程序配置不正 确,应用程序未能启动”解决方法(转)
- 用vc2010以上版本编译可以在低版本xp和2003的运行程序的方法
- VC/MFC 程序最小化后不能还原的原因与解决方法
- 可以让你玩儿光剑的程序,vc实现方法和代码
- [VC/MFC]实现程序运行时隐藏窗口 (多种方法,推荐方法2)
- 在IIS中改变ASP.NET程序版本的实现方法附批处理代码
- vc代码获取文件版本信息