#include <io.h> #pragma comment(lib, "Version.lib") char* getLocalProgramVersion() { char FileName[MAX_PATH] = {0}; ::GetModuleFileName(NULL, FileName, sizeof(FileName) - 1); string asVer = ""; VS_FIXEDFILEINFO *pVsInfo; unsigned int iFileInfoSize = sizeof(VS_FIXEDFILEINFO); int iVerInfoSize = GetFileVersionInfoSize(FileName, NULL); if(iVerInfoSize != 0){ char *pBuf = NULL; while(!pBuf){ pBuf = new char[iVerInfoSize]; } if(GetFileVersionInfo(FileName, 0, iVerInfoSize, pBuf)){ if(VerQueryValue(pBuf, "\\", (void **)&pVsInfo, &iFileInfoSize)){ sprintf(pBuf, "%d.%d.%d.%d", HIWORD(pVsInfo->dwFileVersionMS), LOWORD(pVsInfo->dwFileVersionMS), HIWORD(pVsInfo->dwFileVersionLS), LOWORD(pVsInfo->dwFileVersionLS)); asVer = pBuf; } } delete pBuf; } return asVer; }
C++获取文件版本信息
猜你喜欢
转载自blog.csdn.net/u012592062/article/details/78667485
今日推荐
周排行