首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

小弟我想判断当前操作系统是不是Win8 ? 求高人指点啊

2014-07-02 
我想判断当前操作系统是不是Win8 ? 求高人指点啊!本帖最后由 VisualEleven 于 2012-12-12 11:16:39 编辑OS

我想判断当前操作系统是不是Win8 ? 求高人指点啊!
本帖最后由 VisualEleven 于 2012-12-12 11:16:39 编辑  

OSVERSIONINFOEX osvi;  
    BOOL bOsVersionInfoEx;  
      
    ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));  
    osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);  
    bOsVersionInfoEx = GetVersionEx((OSVERSIONINFO*) &osvi);  
      
// win7的系统版本为NT6.1   
if ( VER_PLATFORM_WIN32_NT == osvi.dwPlatformId &&    
    osvi.dwMajorVersion == 6 &&   
    osvi.dwMinorVersion == 1 )  
{  
    return true;      
}  
else  
{  
return false;  
}
  上面的代码在Win8 64位 操作系统上获取的版本号和Win7 64位上获取的版本号完全相同。

请问如何判断当前操作系统为Win8 64位呢》?
[解决办法]
Win8应该是6.2吧
[解决办法]
版主说的对,很明显是6.2的版本~不是说NT6就终结了么
[解决办法]
vista
osvi.dwMajorVersion == 6 
osvi.dwMinorVersion == 0

win7
osvi.dwMajorVersion == 6 
osvi.dwMinorVersion == 1

win8 官方文档没有
osvi.dwMajorVersion >=6;
osvi.dwMinorVersion如果上面大于6,则值为0
osvi.dwMinorVersion如果上面等于6,则值为2

热点排行