C++ 获取文件版本
static string GetFileVersion() { 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++大文件传输
- 下一篇: C语言字符串操作相关函数