- class CheckWinVersion
- {
- int getOSArchitecture()
- {
- string pa = Environment.GetEnvironmentVariable( "PROCESSOR_ARCHITECTURE" );
- return ((String.IsNullOrEmpty(pa) || String.Compare(pa, 0, "x86" , 0, 3, true ) == 0) ? 32 : 64);
- }
- string getOSInfo()
- {
- //Get Operating system information.
- OperatingSystem os = Environment.OSVersion;
- //Get version information about the os.
- Version vs = os.Version;
- //Variable to hold our return value
- string operatingSystem = "" ;
- if (os.Platform == PlatformID.Win32Windows)
- {
- //This is a pre-NT version of Windows
- switch (vs.Minor)
- {
- case 0:
- operatingSystem = "95" ;
- break ;
- case 10:
- if (vs.Revision.ToString() == "2222A" )
- operatingSystem = "98SE" ;
- else
- operatingSystem = "98" ;
- break ;
- case 90:
- operatingSystem = "Me" ;
- break ;
- default :
- break ;
- }
- }
- else if (os.Platform == PlatformID.Win32NT)
- {
- switch (vs.Major)
- {
- case 3:
- operatingSystem = "NT 3.51" ;
- break ;
- case 4:
- operatingSystem = "NT 4.0" ;
- break ;
- case 5:
- if (vs.Minor == 0)
- operatingSystem = "2000" ;
- else
- operatingSystem = "XP" ;
- break ;
- case 6:
- if (vs.Minor == 0)
- operatingSystem = "Vista" ;
- else
- operatingSystem = "7" ;
- break ;
- default :
- break ;
- }
- }
- //Make sure we actually got something in our OS check
- //We don't want to just return " Service Pack 2" or " 32-bit"
- //That information is useless without the OS version.
- if (operatingSystem != "" )
- {
- //Got something. Let's prepend "Windows" and get more info.
- operatingSystem = "Windows " + operatingSystem;
- //See if there's a service pack installed.
- if (os.ServicePack != "" )
- {
- //Append it to the OS name. i.e. "Windows XP Service Pack 3"
- operatingSystem += " " + os.ServicePack;
- }
- //Append the OS architecture. i.e. "Windows XP Service Pack 3 32-bit"
- operatingSystem += " " + getOSArchitecture().ToString() + "-bit" ;
- }
- //Return the information we've gathered.
- return operatingSystem;
- }
- }
C# 判断Windows版本及CPU位数
最新推荐文章于 2023-08-29 14:25:00 发布