zoukankan      html  css  js  c++  java
  • Windows程序读取自身程序版本信息

    自己写某产品时的代码,虽然网上有一堆一堆,但是这个是自己调试过的,自己留着给自己看

    VOID GetInstanceVersion()
    {
       BOOL version_get = FALSE;
       DWORD dwVersionInfoSize;  
       
       TCHAR szFile[255];
       memset(szFile,0x00,sizeof(szFile));
       GetModuleFileName(NULL,szFile,255);
       dwVersionInfoSize = ::GetFileVersionInfoSize(szFile, NULL);  
        if (0 == dwVersionInfoSize)  
        {  
            //return false;
            version_get = FALSE;
        }  

        char* pVersionInfo = new char[dwVersionInfoSize];  
        memset(pVersionInfo,0x00,sizeof(pVersionInfo));
        if (0 == GetFileVersionInfo(szFile, NULL, dwVersionInfoSize, pVersionInfo))  
        {  

            delete[] pVersionInfo;  
        }  

     
        VS_FIXEDFILEINFO* pVersion = NULL;  
        unsigned int nLen;  
        if(FALSE == ::VerQueryValue(pVersionInfo, _T("\"), (void**)&pVersion, &nLen))  
        {  
            delete[] pVersionInfo;  
            //return false;
            version_get = FALSE;
        }  

        int nFileVersionMS = pVersion->dwFileVersionMS;  
        int nFileVersionLS = pVersion->dwFileVersionLS;  
        
        valStr.Format(_T("%d.%d.%d.%d"),  (pVersion->dwFileVersionMS >> 16) & 0xFF, (pVersion->dwFileVersionMS) & 0xFF, (pVersion->dwFileVersionLS >> 16) & 0xFF, (pVersion->dwFileVersionLS));   

        delete[] pVersionInfo;  
    }

  • 相关阅读:
    [leetcode-91-Decode Ways]
    [leetcode-72-Edit Distance]
    [leetcode-67-Add Binary]
    [leetcode-137-Single Number II]
    [leetcode-60-Permutation Sequence]
    [leetcode-55-Jump Game]
    [leetcode-18-4Sum]
    [leetcode-15-3Sum]
    [leetcode-47-Permutations II]
    easyui tabs update 强制刷新页面
  • 原文地址:https://www.cnblogs.com/ouyshy/p/4552000.html
Copyright © 2011-2022 走看看