https://github.com/angularsen/osinfo
Helpers and extensions when comparing Windows versions.
https://github.com/angularsen/osinfo
Last synced: 3 months ago
JSON representation
Helpers and extensions when comparing Windows versions.
- Host: GitHub
- URL: https://github.com/angularsen/osinfo
- Owner: angularsen
- License: mit
- Created: 2015-01-21T14:54:37.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2017-01-11T15:57:13.000Z (about 9 years ago)
- Last Synced: 2025-02-08T13:46:48.984Z (12 months ago)
- Language: C#
- Size: 770 KB
- Stars: 8
- Watchers: 5
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# OsInfo - Operating System Info
Compare operating system versions, check if OS is 32/64-bit and what service pack is installed.
Targets .NET 3.5 Client. Supports Windows 8.1 and all previous Windows versions.
## NuGet
To install, type ```Install-package OsInfo``` into Package Manager Console in Visual Studio or [visit the nuget page](http://www.nuget.org/packages/osinfo).
## Examples
```csharp
public void PrintCurrentOs()
{
OperatingSystem currentOs = Environment.OSVersion;
Console.WriteLine("Current OS: " + currentOs);
Console.WriteLine("Service pack: " + (currentOs.GetServicePackVersion() ?? (object)"(null)"));
// In .NET 4.5+ you can use Environment.Is64BitOperatingSystem instead
Console.WriteLine("Is 64-bit: " + currentOs.Is64Bit());
Console.WriteLine();
Console.WriteLine("Greater than or equal to XP : " + currentOs.IsGreaterThanOrEqualTo(OsVersion.WinXP));
Console.WriteLine("Greater than or equal to Vista : " + currentOs.IsGreaterThanOrEqualTo(OsVersion.Vista));
Console.WriteLine("Greater than or equal to Win7 : " + currentOs.IsGreaterThanOrEqualTo(OsVersion.Win7));
Console.WriteLine("Greater than or equal to Win8 : " + currentOs.IsGreaterThanOrEqualTo(OsVersion.Win8));
Console.WriteLine("Greater than or equal to Win8.1 : " + currentOs.IsGreaterThanOrEqualTo(OsVersion.Win8Update1));
Console.WriteLine();
Console.WriteLine("Equal to Win8 : " + currentOs.IsEqualTo(OsVersion.Win8));
Console.WriteLine("Equal to Win7 : " + currentOs.IsEqualTo(OsVersion.Win7));
Console.WriteLine();
Console.WriteLine("Less than or equal to Win8 : " + currentOs.IsLessThanOrEqualTo(OsVersion.Win8));
Console.WriteLine("Less than or equal to Win7 : " + currentOs.IsLessThanOrEqualTo(OsVersion.Win7));
Console.WriteLine();
Console.WriteLine("Less than Win8 : " + currentOs.IsLessThan(OsVersion.Win8));
Console.WriteLine("Less than Win7 : " + currentOs.IsLessThan(OsVersion.Win7));
}
```
Yields:
```
Current OS: Microsoft Windows NT 6.2.9200.0
Service pack: (null)
Greater than or equal to XP : True
Greater than or equal to Vista : True
Greater than or equal to Win7 : True
Greater than or equal to Win8 : True
Greater than or equal to Win8.1 : False
Equal to Win8 : True
Equal to Win7 : False
Less than or equal to Win8 : True
Less than or equal to Win7 : False
Less than Win8 : False
Less than Win7 : False
```
## Notes
Windows 8.1 will report as Windows 8 (6.2.9200) for applications that do not explicitly specify compatibility with Windows 8.1 in their app manifest. [Read more](http://stackoverflow.com/a/17406963/134761).