C#一个简单办法判断操作系统版本

Posted vikimono

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#一个简单办法判断操作系统版本相关的知识,希望对你有一定的参考价值。

做个记录,最近写个小软件,涉及到判断操作系统版本的,查看了微软的相关资料,感觉以及网上的一些Demo,感觉不全,而且有些系统也不好区分。

因为之前写过批处理版本的操作系统判断使用了WMIC的命令,所以一想放到C#试一下,结果也可行,我认为是最简单的方法了。

以下是Demo代码

 1 using System;
 2 using System.Windows.Forms;
 3 using System.Management;
 4 
 5 namespace OS_Demo
 6 {
 7     public partial class Form1 : Form
 8     {
 9         public Form1()
10         {
11             InitializeComponent();
12             GetOSNameInfo();
13         }
14 
15         private void GetOSNameInfo()
16         {
17             try
18             {
19                 ManagementClass osClass = new ManagementClass("Win32_OperatingSystem");
20                 foreach (ManagementObject obj in osClass.GetInstances())
21                 {
22                     PropertyDataCollection pdc = obj.Properties;
23                     foreach (PropertyData pd in pdc)
24                     {
25                         if (pd.Name == "Caption")
26                             this.osName.Text = string.Format("{0}", pd.Value, "
");
27                     }
28                 }
29             }
30             catch (Exception ex)
31             {
32                 MessageBox.Show(ex.Message);
33             }
34         }
35     }
36 }

技术分享图片

此后只需要判断这个字符串就行了

以上是关于C#一个简单办法判断操作系统版本的主要内容,如果未能解决你的问题,请参考以下文章

如何为 XSLT 代码片段配置 CruiseControl 的 C# 版本?

C#程序员经常用到的10个实用代码片段

XSS:如何从 C# 中的字符串中删除 JS 片段?

是否可以动态编译和执行 C# 代码片段?

C# 最有用的(自定义)代码片段是啥? [关闭]

(60)C#里判断引用相等的方法