做个记录,最近写个小软件,涉及到判断操作系统版本的,查看了微软的相关资料,感觉以及网上的一些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, "\r\n"); 27 } 28 } 29 } 30 catch (Exception ex) 31 { 32 MessageBox.Show(ex.Message); 33 } 34 } 35 } 36 }
此后只需要判断这个字符串就行了
原文地址:https://www.cnblogs.com/vikimono/p/9498070.html
时间: 2024-10-09 05:33:19