获取版本: CString GetFileVersion(char* FileName) { int iVerInfoSize; char *pBuf; CString asVer=""; VS_FIXEDFILEINFO *pVsInfo; unsigned int iFileInfoSize = sizeof( VS_FIXEDFILEINFO ); iVerInfoSize = GetFileVersionInfoSize(FileName,NULL); if(iVerInfoSize!= 0) { pBuf = new char[iVerInfoSize]; if(GetFileVersionInfo(FileName,0, iVerInfoSize, pBuf ) ) { if(VerQueryValue(pBuf, "//",(void **)&pVsInfo,&iFileInfoSize)) { asVer.Format("%d.%d.%d.%d",HIWORD(pVsInfo->dwFileVersionMS),LOWORD(pVsInfo->dwFileVersionMS),HIWORD(pVsInfo->dwFileVersionLS),LOWORD(pVsInfo->dwFileVersionLS)); } } delete pBuf; } return asVer; } 获取路径: CString GetCurrentAppDirectory() { char szFile[MAX_PATH]; char szPath[MAX_PATH]; GetModuleFileName(NULL,szFile,MAX_PATH); size_t i; for(i=strlen(szFile)-1; i>0 && szFile[i]!='//'; i--); szFile[i]='/0'; strcpy(szPath,szFile); return (szPath); } 获取修改时间: CString GetModifyTime(CString appname) { WIN32_FIND_DATA ffd ; HANDLE hFind = FindFirstFile(appname,&ffd); SYSTEMTIME stUTC, stLocal; FileTimeToSystemTime(&(ffd.ftLastWriteTime), &stUTC); SystemTimeToTzSpecificLocalTime(NULL, &stUTC, &stLocal); CString strTmp; strTmp.Format("%d-%d-%d,%d:%d", stLocal.wYear,stLocal.wMonth,stLocal.wDay,stLocal.wHour,stLocal.wMinute); //-- return strTmp; }