看来,引用Windows的"版本"一词用于不同的事情.例如,在Windows 10"周年更新"是由微软(标记为"1607版" 这里的例子).但是,如果我尝试使用以下代码获取"版本"(在安装了周年纪念更新的PC上),则不会返回任何看起来像"1607"的内容.
// Get Version details
Version ver = os.Version;
Console.WriteLine("Major version: " + ver.Major);
Console.WriteLine("Major Revision: " + ver.MajorRevision);
Console.WriteLine("Minor version: " + ver.Minor);
Console.WriteLine("Minor Revision: " + ver.MinorRevision);
Console.WriteLine("Build: " + ver.Build);
Run Code Online (Sandbox Code Playgroud)
我明白了:
Major version: 6
Major Revision: 0
Minor version: 2
Minor Revision: 0
Build: 9200
Run Code Online (Sandbox Code Playgroud)
如何获得"版本1607"中的Windows 10"版本"?
谢谢!
Sta*_*avm 27
根据MSDN官方链接,每个Windows版本都有一个特定的版本号.在dot net中,可以使用Environment.OSVersion对象读取.
Console.WriteLine("OSVersion: {0}", Environment.OSVersion);
//output: OSVersion: Microsoft Windows NT 6.2.9200.0
Run Code Online (Sandbox Code Playgroud)
您正在寻找的是ReleaseID而不是Windows版本.这可以从注册表项中读取:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ReleaseId
using Microsoft.Win32;
string releaseId = Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion", "ReleaseId", "").ToString();
Console.WriteLine(releaseId);
Run Code Online (Sandbox Code Playgroud)
小智 5
string Version = (string)Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion", "ProductName", null);
Run Code Online (Sandbox Code Playgroud)
命名为“Windows 10 Enterprise”。
归档时间: |
|
查看次数: |
13527 次 |
最近记录: |