获取Windows版本(源码)

public   enum  WindowsVersion

{

    Win95,

    Win98,

    Win98Se,

    WinMe,

    WinNT351,

    WinNT4,

    Win2000,

    WinXP,

    Win2003,

    Unknown,

}


 

/// <summary>

/// 获取Windows版本号

/// </summary>

/// <remarks>

/// 好像 .NET 不能在 95/NT3/NT4 上运行,加了这些版本号识别有意义吗? :-(

/// </remarks>


public   static  WindowsVersion GetWindowsVersion()

{

    
// +----------------------------------------------------------------------------+

    
// |Windows | 95 | 98 | ME | NT3.51| NT4.0 | 2000 | XP | 2003 |

    
// +----------------------------------------------------------------------------+

    
// |PlatformID | 1 | 1 | 1 | 2 | 2 | 2 | 2 | 2 |

    
// +----------------------------------------------------------------------------+

    
// |Major | 4 | 4 | 4 | 4 | 4 | 5 | 5 | 5 |

    
// +----------------------------------------------------------------------------+

    
// |Minor | 0 | 10 | 90 | 0 | 0 | 1 | 2 | 3 |

    
// +----------------------------------------------------------------------------+

 

    OperatingSystem osInfo 
= Environment.OSVersion;

 

    
switch (osInfo.Platform)

    
{

        
case PlatformID.Win32Windows:

        
{

            
switch (osInfo.Version.Minor)

            
{

                
case 0:

                
return WindowsVersion.Win95;

                
case 10:

                
if (osInfo.Version.Revision.ToString() == "2222A")

                
return WindowsVersion.Win98Se;

                
else

                
return WindowsVersion.Win98;

                
case 90:

                
return WindowsVersion.WinMe;

            }


            
break;

        }


        
case PlatformID.Win32NT:

        
{

            
switch (osInfo.Version.Major)

            
{

                
case 3:

                
return WindowsVersion.WinNT351;

                
case 4:

                
return WindowsVersion.WinNT4;

                
case 5:

                
{

                    
switch (osInfo.Version.Minor)

                    
{

                        
case 0:

                        
return WindowsVersion.Win2000;

                        
case 1:

                        
return WindowsVersion.WinXP;

                        
case 2:

                        
return WindowsVersion.Win2003;

                    }


                    
break;

                }


            }


            
break;

        }


    }


 

    
return WindowsVersion.Unknown;

}


 

private   void  button2_Click( object  sender, EventArgs e)

{

    MessageBox.Show(GetWindowsVersion().ToString());

 

}


 

 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值