Added OS detection for Windows Server 2008, Windows Server 2012(beta), and Windows 8(beta).
This commit is contained in:
@@ -194,22 +194,30 @@ LLOSInfo::LLOSInfo() :
|
||||
if(osvi.wProductType == VER_NT_WORKSTATION)
|
||||
mOSStringSimple = "Microsoft Windows XP x64 Edition ";
|
||||
else
|
||||
mOSStringSimple = "Microsoft Windows Server 2003 ";
|
||||
mOSStringSimple = "Microsoft Windows Server 2003 ";
|
||||
}
|
||||
else if(osvi.dwMajorVersion == 6 && osvi.dwMinorVersion <= 1)
|
||||
else if(osvi.dwMajorVersion == 6 && osvi.dwMinorVersion <= 2)
|
||||
{
|
||||
if(osvi.dwMinorVersion == 0)
|
||||
{
|
||||
mOSStringSimple = "Microsoft Windows Vista ";
|
||||
if(osvi.wProductType == VER_NT_WORKSTATION)
|
||||
mOSStringSimple = "Microsoft Windows Vista ";
|
||||
else
|
||||
mOSStringSimple = "Windows Server 2008 ";
|
||||
}
|
||||
else if(osvi.dwMinorVersion == 1)
|
||||
{
|
||||
mOSStringSimple = "Microsoft Windows 7 ";
|
||||
if(osvi.wProductType == VER_NT_WORKSTATION)
|
||||
mOSStringSimple = "Microsoft Windows 7 ";
|
||||
else
|
||||
mOSStringSimple = "Windows Server 2008 R2 ";
|
||||
}
|
||||
|
||||
if(osvi.wProductType != VER_NT_WORKSTATION)
|
||||
else if(osvi.dwMinorVersion == 2)
|
||||
{
|
||||
mOSStringSimple += "Server ";
|
||||
if(osvi.wProductType == VER_NT_WORKSTATION)
|
||||
mOSStringSimple = "Microsoft Windows 8 ";
|
||||
else
|
||||
mOSStringSimple = "Windows Server 2012 ";
|
||||
}
|
||||
|
||||
///get native system info if available..
|
||||
@@ -314,8 +322,7 @@ LLOSInfo::LLOSInfo() :
|
||||
std::string compatibility_mode;
|
||||
if(got_shell32_version)
|
||||
{
|
||||
if(osvi.dwMajorVersion != shell32_major
|
||||
|| osvi.dwMinorVersion != shell32_minor)
|
||||
if(osvi.dwMajorVersion != shell32_major || osvi.dwMinorVersion != shell32_minor)
|
||||
{
|
||||
compatibility_mode = llformat(" compatibility mode. real ver: %d.%d (Build %d)",
|
||||
shell32_major,
|
||||
|
||||
Reference in New Issue
Block a user