繁体   English   中英

如何在Windows中获得当前操作系统版本的说明?

[英]How do I get a description of the current OS version in windows?

我需要对操作系统进行简单描述,例如在某些调试代码中包括“ Windows XP(SP2)”或“ Windows 2000 Professional”。 理想情况下,我只想通过调用“ GetOSDisplayName”函数来检索它。

C ++ win32编程有这样的功能吗?

如果要查找市场营销使用的productName +版本,则在注册表中:

HKEY_LOCAL_MACHINE \\ SOFTWARE \\ Microsoft \\ Windows NT \\ CurrentVersion \\产品名称

看着我的电脑,它显示“ Windows 8.1 Pro”。

这是我最近遇到的事情的一个例子:

OSVERSIONINFO osvi;

ZeroMemory(&osvi, sizeof(OSVERSIONINFO));
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);

GetVersionEx(&osvi);
// use osvi.dwMajorVersion and osvi.dwMinorVersion

您需要运行一些测试以检查数字对应的Windows版本。 这可能会有所帮助: http : //en.wikipedia.org/wiki/History_of_Microsoft_Windows#Windows_NT

// (bad) example to check if we're running Windows XP
if (osvi.dwMajorVersion == 5 && osvi.dwMinorVersion == 1)
{
    // Windows XP
}

请在下面找到相关的.NET问题和答案集的链接。 在.NET和C ++ / Win32之间进行一些琐碎的映射之后,C ++ / Win32的答案在本质上是相同的。

如何将MS Windows OS版本号转换为.NET中的产品名称?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM