如何获取某一个应用程序的产品版本号

来源:互联网 发布:unity3d学习路线 编辑:程序博客网 时间:2024/05/28 17:07

std::string GetAppProductVersion(char* path)

{        

             VS_FIXEDFILEINFO verInfo;

              DWORD dwHandle;        

             DWORD dwSize = GetFileVersionInfoSize(path, &dwHandle);        

             if (dwSize != 0)       

             {              

                         BYTE* pData = new BYTE[dwSize];              

                        if (!GetFileVersionInfo(path, dwHandle, dwSize, pData))              

                        {                    

                                   delete [] pData;                    

                                   return strVersion;              

                         }

                         void* pBuf = NULL;               

                         UINT pBufLen;              

                         if (!VerQueryValue(pData, "//StringFileInfo//080404e4//ProductVersion", &pBuf, &pBufLen))    {                      

                                      delete [] pData;                       

                                       return strVersion;             

                           }

                         char szVersion[80];             

                         memcpy(szVersion, pBuf, pBufLen);             

                         szVersion[pBufLen] = 0;              

                        strVersion = szVersion;            

                        delete [] pData;      

           }

            return strVersion;

}

原创粉丝点击