/*********************************************************************************
* author: hjjdebug
* date: 2011
* description:
* version info 储存在资源文件中,需要用api 来获得信息。
* 这是一个实例, GetFileVersionInfo, VerQueryValue 的用法
*********************************************************************************/
#include "stdafx.h"
#include <windows.h>
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
if(argc==1)
{
cout << "Usage: " <<argv[0] << " filename" << endl;
system("pause");
return -1;
}
DWORD size=GetFileVersionInfoSize(argv[1],NULL);
char *buffer = new char[size+1]; // 分配足够大内存储存信息
if(!GetFileVersionInfo(argv[1],NULL,size,buffer))
{
delete[] buffer;
cout << "can't get version info!"<<endl;
system("pause");
return -1;
}
VS_FIXEDFILEINFO *FixDataInfo;
UINT len;
if(VerQueryValue(buffer,"//",(LPVOID *)&FixDataInfo,&len))
{
cout <<"Major version:"<<hex<<FixDataInfo->dwFileVersionMS<<endl;
cout <<"Minor version:"<<hex<<FixDataInfo->dwFileVersionLS<<endl;
cout << "ok" << endl;
}
delete[] buffer;
system("pause");
return 0;
}
从资源文件中获取版本信息
最新推荐文章于 2015-10-29 09:49:00 发布