繁体   English   中英

为什么OS.Version报告适用于Windows 8.1的Windows 8.0?

[英]Why OS.Version reports Windows 8.0 for Windows 8.1?

使用Environment.OSVersion.Version.ToString(); 在这种模式下

MessageBox.Show(Environment.OSVersion.Version.ToString()); 在CMD上使用ver命令返回6.3时显示值6.2

我有Windows 8.1专业版原始版

像这样(messageBox是Telerik Controls的RadMessageBox): 在此处输入图片说明

为什么?

这是一个功能 ,而不是错误。 这是因为Windows 8.1只会将版本6.3报告给专门针对该平台的应用程序。

有关官方文档,请参见此处此处

手册 ;

对于Windows 8和Windows 8.1,OSVersion属性报告相同的版本号(6.2.0.0)。

换句话说,有文件记载的“限制”。

http://msdn.microsoft.com/zh-CN/library/windows/desktop/ms724832(v=vs.85).aspx

如果您在这里查看,您会发现它取决于您的应用程序清单。 看星星点:)

我用过这种方法!

RegistryKey key2 = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, "");
                RegistryKey subkey2 = key2.OpenSubKey("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion");
                string value = subkey2.GetValue("CurrentVersion").ToString();
                if (value == "6.3")

暂无
暂无

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

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