vc mfc代码中获得程序资源中版本信息的方法

本文介绍了一种在VC资源编辑中获取程序版本信息的方法,通过编写特定函数可直接从程序资源中读取并返回版本号字符串,方便统一管理和显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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;
}

当然,通过类似方法还可以获得更丰富的版本信息,有用到的朋友可以参考自己写下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值