获取windows系统的版本名称
2014-06-11 18:29
357 查看
windows系统的版本信息从OSVERSIONINFO 结构体获取,该结构体的详细定义如下:</span>
<pre name="code" class="cpp">typedef struct _OSVERSIONINFOA { DWORD dwOSVersionInfoSize; DWORD dwMajorVersion;//主版本号 DWORD dwMinorVersion;//次版本号 DWORD dwBuildNumber; DWORD dwPlatformId; CHAR szCSDVersion[ 128 ]; // Maintenance string for PSS usage } OSVERSIONINFOA, *POSVERSIONINFOA, *LPOSVERSIONINFOA;
void GetSystemName(std::string &strOsName) { SYSTEM_INFO info; GetSystemInfo(&info); OSVERSIONINFOEX os; os.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX); strOsName = _T("unknown OperatingSystem."); if(GetVersionEx((OSVERSIONINFO *)&os)) { switch(os.dwMajorVersion) { case 4: switch(os.dwMinorVersion) { case 0: if(os.dwPlatformId == VER_PLATFORM_WIN32_NT) strOsName =_T("Windows NT 4.0"); else if(os.dwPlatformId==VER_PLATFORM_WIN32_WINDOWS) strOsName =_T("Windows 95"); break; case 10: strOsName =_T("Windows 98"); break; case 90: strOsName =_T("Windows Me"); break; } break; case 5: switch(os.dwMinorVersion) { case 0: strOsName =_T("Windows 2000"); break; case 1: strOsName =_T("Windows XP"); break; case 2: if(os.wProductType==VER_NT_WORKSTATION && info.wProcessorArchitecture==PROCESSOR_ARCHITECTURE_AMD64) { strOsName =_T("Windows XP Professional x64 Edition"); } else if(GetSystemMetrics(SM_SERVERR2)==0) strOsName =_T("Windows Server 2003"); else if(GetSystemMetrics(SM_SERVERR2)!=0) strOsName =_T("Windows Server 2003 R2"); break; } break; case 6: switch(os.dwMinorVersion) { case 0: if(os.wProductType == VER_NT_WORKSTATION) strOsName =_T("Windows Vista"); else strOsName =_T("Windows Server 2008"); break; case 1: if(os.wProductType == VER_NT_WORKSTATION) strOsName =_T("Windows 7"); else strOsName =_T("Windows Server 2008 R2"); break; case 2: if(os.wProductType == VER_NT_WORKSTATION) strOsName =_T("Windows 8"); else strOsName =_T("Windows Server 2012"); break; case 3: if(os.wProductType == VER_NT_WORKSTATION) strOsName =_T("Windows 8.1"); else strOsName =_T("Windows Server 2012 R2"); break; } break; } } }
相关文章推荐
- 获取windows系统版本信息
- 获取Windows系统版本信息
- VC++ 获取windows系统的版本类型
- windows平台下 c++获取 系统版本 网卡 内存 CPU 硬盘 显卡信息<转>
- WIN获取系统版本和名称
- 获取windows操作系统名称和版本
- iOS 获取手机的型号,系统版本,设备名称等
- delphi获取windows系统版本信息,大全,准确
- windows平台下 c++获取 系统版本 网卡 内存 CPU 硬盘 显卡信息
- 利用Python脚本获取Windows和Linux的系统版本信息 推荐
- [Windows]从文件夹名称推断系统版本
- VC++ 获取windows系统的版本类型
- windows驱动获取系统版本信息 PsGetVersion RtlGetVersion
- VC/MFC程序中获取当前Windows操作系统版本名称(2016-04-25修改)
- 获取当前windows系统 及 版本
- delphi获取windows系统版本信息,大全,准确
- 获取Windows系统安装的字体名称极其对应的字体文件名
- windows 下c++获取操作系统版本名称笔记
- 获取Windows 系统的内核变量
- 打开*.HLP时,系统提示"*.hlp是为此Windows版本不支持的语言创建的"的解决方法!