⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 getversion.txt

📁 获取文件的版号
💻 TXT
字号:
函数调用
CString version = GetApplicationVersion("E:\\software\\360safe\\360Safe.exe");
if(version.Compare("error") == 0)
{
	AfxMessageBox("你所指定的文件无版本号或文件出错");
}else
{
	AfxMessageBox(version);
}

CString GetApplicationVersion(CString FullPath)
{
	TCHAR szFullPath[MAX_PATH];
	DWORD dwVerInfoSize = 0;
	DWORD dwVerHnd;
	VS_FIXEDFILEINFO * pFileInfo;
	strcpy(szFullPath,FullPath);

    dwVerInfoSize = GetFileVersionInfoSize(szFullPath, &dwVerHnd);
    if (dwVerInfoSize)
    {
        HANDLE  hMem;
        LPVOID  lpvMem;
		unsigned int uInfoSize = 0;
		
        hMem = GlobalAlloc(GMEM_MOVEABLE, dwVerInfoSize);
        lpvMem = GlobalLock(hMem);
        GetFileVersionInfo(szFullPath, dwVerHnd, dwVerInfoSize, lpvMem);
		
		::VerQueryValue(lpvMem, (LPTSTR)_T("\\"), (void**)&pFileInfo, &uInfoSize);
		
		WORD m_nProdVersion[4];
		
		m_nProdVersion[0] = HIWORD(pFileInfo->dwProductVersionMS); 
		m_nProdVersion[1] = LOWORD(pFileInfo->dwProductVersionMS);
		m_nProdVersion[2] = HIWORD(pFileInfo->dwProductVersionLS);
		m_nProdVersion[3] = LOWORD(pFileInfo->dwProductVersionLS); 
		
		CString strVersion ;
		strVersion.Format(_T("%d.%d.%d.%d"),m_nProdVersion[0],
			m_nProdVersion[1],m_nProdVersion[2],m_nProdVersion[3]);
		
		GlobalUnlock(hMem);
        GlobalFree(hMem);	
		return strVersion;	
	}
	return "error";
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -