C#完成斷定操作體系能否為Win8以上版本。本站提示廣大學習愛好者:(C#完成斷定操作體系能否為Win8以上版本)文章只能為提供參考,不一定能成為您想要的結果。以下是C#完成斷定操作體系能否為Win8以上版本正文
1、應用C#獲得OS的版本號
(1) 道理解釋
Environment類的OSVersion屬性是一個OperatingSystem類型的對象,OperatingSystem類表現有關操作體系的信息,如版本戰爭台標識符。OperatingSystem類的Version屬性,描寫了操作體系的主版本號、次版本號、外部版本號和修改版本號,所以可使用Environment.OSVersion.Version來獲得操作體系的版本信息。
(2) 詳細代碼
using System; namespace GetOSVersionExp { class Program { static void Main(string[] args) { Version currentVersion = Environment.OSVersion.Version; //OS版本號 Console.WriteLine("Major:{0}", currentVersion.ToString()); //OS版本號的重要版本號 Console.WriteLine("Major:{0}", currentVersion.Major); //OS版本號的主要版本號 Console.WriteLine("Minor:{0}", currentVersion.Minor); //OS版本號的外部版本號 Console.WriteLine("Build:{0}", currentVersion.Build); //OS版本號的修訂部門的值 Console.WriteLine("Revision:{0}", currentVersion.Revision); //OS版本號的修訂號的高16位 Console.WriteLine("MajorRevision:{0}", currentVersion.MajorRevision); //OS版本號的修訂號的低16位 Console.WriteLine("MinorRevision:{0}", currentVersion.MinorRevision); } } }
(3) 法式履行成果
(4) 彌補解釋
版本號由二至四個部門構成:重要版本號、主要版本號、外部版本號和修訂號。
1.重要版本號和主要版本號是必選的;
2.外部版本號和修訂號是可選的,然則假如界說了修訂號部門,則外部版本號就是必選的。
3.一切界說的組件都必需是年夜於或等於零的整數。
關於Windows的版本信息,可以拜訪:Operating System Version
2、應用反射獲得以後正在運轉的法式的版本信息
上面的代碼演示應用反射技巧獲得以後正在運轉的法式的版本信息。
using System; using System.Reflection; namespace GetOSVersionExp { class Program { static void Main(string[] args) { Assembly assem = Assembly.GetExecutingAssembly(); AssemblyName assemName = assem.GetName(); Version ver = assemName.Version; Console.WriteLine("{0}, Version {1}", assemName.Name, ver.ToString()); } } }
履行成果以下圖所示:
代碼中應用Assembly類的GetExecutingAssembly()辦法獲得包括以後正在履行的代碼的法式集,再應用GetName()辦法獲得法式集的稱號(應用AssemblyName 類的對象來表現),並經由過程拜訪AssemblyName 的屬性Version獲得法式集的版本信息。應用Assembly 類須要添加援用“using System.Reflection;”。
3 應用C#斷定以後操作體系能否為Win8體系
直接上代碼:
using System; namespace GetOSVersionExp { class Program { static void Main(string[] args) { Version currentVersion = Environment.OSVersion.Version; Version compareToVersion = new Version("6.2"); if (currentVersion.CompareTo(compareToVersion) >= 0) {//win8及其以上版本的體系 Console.WriteLine("以後體系是WIN8及以上版本體系。"); } else { Console.WriteLine("以後體系不是WIN8及以上版本體系。"); } } } }
運轉法式
由於本機為WIN7體系,所以法式運轉成果為“以後體系不是WIN8及以上體系”。
此辦法在斷定體系能否是高於或低於某個版本的體系時實用,若要精確斷定以後體系是甚麼類型可以參考《C#斷定操作體系類型總結》的引見。
好了,就到這裡。