Windows操作系统的版本号一览

操作系统  PlatformID  主版本号  副版本号
 Windows95  1  4  0
 Windows98  1  4  10
 WindowsMe  1  4  90
 WindowsNT3.5  2  3  0
 WindowsNT4.0  2  4  0
 Windows2000  2  5  0
 WindowsXP  2  5  1
 Windows2003  2  5  2
 WindowsVista  2  6  0
 Windows7  2  6  1
 Windows8      

获取操作系统信息的相关类或属性

复制代码 代码如下:
//获取系统信息
System.OperatingSystem osInfo = System.Environment.OSVersion;
//获取操作系统ID
System.PlatformID platformID = osInfo.Platform;
//获取主版本号
int versionMajor = osInfo.Version.Major;
//获取副版本号
int versionMinor = osInfo.Version.Minor;

System.PlatformID枚举值及其含义

复制代码 代码如下:
Win32S  操作系统为 Win32s(Win32 子集)类型。
Win32s 是运行于 Windows 16 位版本上的层,它提供对 32 位应用程序的访问。
Win32Windows  操作系统为 Windows 95 或较新的版本。
Win32NT 操作系统为 Windows NT 或较新的版本。
WinCE   操作系统为 Windows CE。
Unix    操作系统为 Unix。
Xbox    开发平台为 Xbox 360。

示例

复制代码 代码如下:

//C#判断操作系统是否为Windows98
public static bool IsWindows98
{
    get
    {
       
return (Environment.OSVersion.Platform == PlatformID.Win32Windows)
&& (Environment.OSVersion.Version.Minor == 10) &&
(Environment.OSVersion.Version.Revision.ToString() != "2222A");
    }
}
//C#判断操作系统是否为Windows98第二版
public static bool IsWindows98Second
{
    get
    {
       
return (Environment.OSVersion.Platform == PlatformID.Win32Windows)
&& (Environment.OSVersion.Version.Minor == 10) &&
(Environment.OSVersion.Version.Revision.ToString() == "2222A");
    }
}
//C#判断操作系统是否为Windows2000
public static bool IsWindows2000
{
    get
    {
       
return (Environment.OSVersion.Platform == PlatformID.Win32NT)
&& (Environment.OSVersion.Version.Major == 5) &&
(Environment.OSVersion.Version.Minor == 0);
    }
}
//C#判断操作系统是否为WindowsXP
public static bool IsWindowsXP {
    get {
       
return (Environment.OSVersion.Platform == PlatformID.Win32NT)
&& (Environment.OSVersion.Version.Major == 5) &&
(Environment.OSVersion.Version.Minor == 1);
    }
}
//C#判断操作系统是否为Windows2003
public static bool IsWindows2003
{
    get
    {
       
return (Environment.OSVersion.Platform == PlatformID.Win32NT)
&& (Environment.OSVersion.Version.Major == 5) &&
(Environment.OSVersion.Version.Minor == 2);
    }
}
//C#判断操作系统是否为WindowsVista
public static bool IsWindowsVista
{
    get
    {
       
return (Environment.OSVersion.Platform == PlatformID.Win32NT)
&& (Environment.OSVersion.Version.Major == 6) &&
(Environment.OSVersion.Version.Minor == 0);
    }
}
//C#判断操作系统是否为Windows7
public static bool IsWindows7
{
    get
    {
       
return (Environment.OSVersion.Platform == PlatformID.Win32NT)
&& (Environment.OSVersion.Version.Major == 6) &&
(Environment.OSVersion.Version.Minor == 1);
    }
}
//C#判断操作系统是否为Unix
public static bool IsUnix
{
    get
    {
        return Environment.OSVersion.Platform == PlatformID.Unix;
    }
}

深入C#判断操作系统类型的总结详解(转载)的更多相关文章

  1. Java 判断操作系统类型(适用于各种操作系统)

    Java 判断操作系统类型(适用于各种操作系统) 最近一段时间写一个授权的程序,需要获取很多信息来保证程序不能随意复制使用,必须经过授权才可以. 为了限制用户使用的操作系统,必须有统一的方法来获取才可 ...

  2. “全栈2019”Java多线程第九章:判断线程是否存活isAlive()详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  3. 《手把手教你》系列技巧篇(四十七)-java+ selenium自动化测试-判断元素是否显示(详解教程)

    1.简介 webdriver有三种判断元素状态的方法,分别是isEnabled,isSelected 和 isDisplayed,其中isSelected在前面的内容中已经简单的介绍了,isSelec ...

  4. 《手把手教你》系列技巧篇(四十八)-java+ selenium自动化测试-判断元素是否可操作(详解教程)

    1.简介 webdriver有三种判断元素状态的方法,分别是isEnabled,isSelected 和 isDisplayed,其中isSelected在前面的内容中已经简单的介绍了,isSelec ...

  5. malloc 与 free函数详解<转载>

    malloc和free函数详解   本文介绍malloc和free函数的内容. 在C中,对内存的管理是相当重要.下面开始介绍这两个函数: 一.malloc()和free()的基本概念以及基本用法: 1 ...

  6. GridView内容详解(转载)

    GridView内容详解(转载) GridView是ASP.NET界面开发中的一个重要的控件,对GridView使用的熟练程度直接影响软件开发的进度及功能的实现.(车延禄)GridView的主要新特性 ...

  7. 如约而至,Java 10 正式发布! Spring+SpringMVC+MyBatis+easyUI整合进阶篇(十四)Redis缓存正确的使用姿势 努力的孩子运气不会太差,跌宕的人生定当更加精彩 优先队列详解(转载)

    如约而至,Java 10 正式发布!   3 月 20 日,Oracle 宣布 Java 10 正式发布. 官方已提供下载:http://www.oracle.com/technetwork/java ...

  8. Linux下的I/O复用与epoll详解(转载)

    Linux下的I/O复用与epoll详解 转载自:https://www.cnblogs.com/lojunren/p/3856290.html  前言 I/O多路复用有很多种实现.在linux上,2 ...

  9. Java 反射 设计模式 动态代理机制详解 [ 转载 ]

    Java 反射 设计模式 动态代理机制详解 [ 转载 ] @author 亦山 原文链接:http://blog.csdn.net/luanlouis/article/details/24589193 ...

随机推荐

  1. jq获取鼠标位置

    jq获取鼠标位置 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  2. 直传文件到Azure Storage的Blob服务中

    (此文章同时发表在本人微信公众号“dotNET每日精华文章”,欢迎右边二维码来关注.) 题记:为了庆祝获得微信公众号赞赏功能,忙里抽闲分享一下最近工作的一点心得:如何直接从浏览器中上传文件到Azure ...

  3. myeclipse+tomcat 工程名改名的问题 ——————完美解决方案

    当建好的工程再重命名之后,发布和访问的时候都还是原来的名字,这个问题纠结了我很久,最好找到解决方法,这里分享一下,希望大家不要再受这种困惑.解决方法: 点击工程右键->properties-&g ...

  4. C语言字符串长度(转)

    C语言字符串长度的计算是编程时常用到的,也是求职时必考的一项. C语言本身不限制字符串的长度,因而程序必须扫描完整个字符串后才能确定字符串的长度. 在程序里,一般会用strlen()函数或sizeof ...

  5. 通过yeelink平台监控树莓派CPU温度变化

    通过yeelink平台监控树莓派温度,是很多派友入门第一课.作为一名刚入手树莓派裸机不久的新手,在没有其他硬件支持的情况,通过yeelink平台来监控树莓派CPU温度变化,也是我学习树莓派.学习智能硬 ...

  6. MongoDB3.0新特性

    3月3日,MongoDB3.0终于发布了. 主要特点包括了对之前收购的WiredTiger存储引擎的支持,插件式存储引擎API,SCRAM-SHA-1认证机制,并改进了解释功能.此外,包含了自动化.备 ...

  7. 【前台 ajax】web项目前台传递数组给后台 两种方式

    项目使用maven    springMVC 有需求 将前台的数组   在ajax中 送给后台 方式1: 前台代码:[注意:ajax中的属性---traditional:true,  ] 如果Post ...

  8. Activity之间传递数据的方式及常见问题总结

    Activity之间传递数据一般通过以下几种方式实现: 1. 通过intent传递数据 2. 通过Application 3. 使用单例 4. 静态成员变量.(可以考虑 WeakReferences) ...

  9. json 转化

    1. 把java 对象列表转换为json对象数组,并转为字符串 复制代码代码如下:     JSONArray array = JSONArray.fromObject(userlist);    S ...

  10. AngularJS开发之_指令

    指令是什么?    指令是我们用来扩展浏览器能力的技术之一.在DOM编译期间,和HTML关联着的指令会被检测到,并且被执行.这使得指令可以为DOM指定行为,或者改变它. 1.指令的匹配模式 index ...