diff --git a/SafeExamBrowser.Client/app.manifest b/SafeExamBrowser.Client/app.manifest
index 5aac52c2..e8c185d0 100644
--- a/SafeExamBrowser.Client/app.manifest
+++ b/SafeExamBrowser.Client/app.manifest
@@ -19,7 +19,7 @@
-
+
diff --git a/SafeExamBrowser.Runtime/app.manifest b/SafeExamBrowser.Runtime/app.manifest
index b5fd0962..ad8193c9 100644
--- a/SafeExamBrowser.Runtime/app.manifest
+++ b/SafeExamBrowser.Runtime/app.manifest
@@ -19,7 +19,7 @@
-
+
diff --git a/SafeExamBrowser.SystemComponents.Contracts/OperatingSystem.cs b/SafeExamBrowser.SystemComponents.Contracts/OperatingSystem.cs
index c77e408e..01248118 100644
--- a/SafeExamBrowser.SystemComponents.Contracts/OperatingSystem.cs
+++ b/SafeExamBrowser.SystemComponents.Contracts/OperatingSystem.cs
@@ -17,6 +17,7 @@ namespace SafeExamBrowser.SystemComponents.Contracts
Windows7,
Windows8,
Windows8_1,
- Windows10
+ Windows10,
+ Windows11
}
}
diff --git a/SafeExamBrowser.SystemComponents/SystemInfo.cs b/SafeExamBrowser.SystemComponents/SystemInfo.cs
index dfd56b03..2fa63fa2 100644
--- a/SafeExamBrowser.SystemComponents/SystemInfo.cs
+++ b/SafeExamBrowser.SystemComponents/SystemInfo.cs
@@ -97,6 +97,7 @@ namespace SafeExamBrowser.SystemComponents
// assembly needs to define an application manifest where the supported Windows versions are specified!
var major = Environment.OSVersion.Version.Major;
var minor = Environment.OSVersion.Version.Minor;
+ var build = Environment.OSVersion.Version.Build;
// See https://en.wikipedia.org/wiki/List_of_Microsoft_Windows_versions for mapping source...
if (major == 6)
@@ -116,7 +117,14 @@ namespace SafeExamBrowser.SystemComponents
}
else if (major == 10)
{
- OperatingSystem = OperatingSystem.Windows10;
+ if (build < 22000)
+ {
+ OperatingSystem = OperatingSystem.Windows10;
+ }
+ else
+ {
+ OperatingSystem = OperatingSystem.Windows11;
+ }
}
}
@@ -132,6 +140,8 @@ namespace SafeExamBrowser.SystemComponents
return "Windows 8.1";
case OperatingSystem.Windows10:
return "Windows 10";
+ case OperatingSystem.Windows11:
+ return "Windows 11";
default:
return "Unknown Windows Version";
}
@@ -176,8 +186,8 @@ namespace SafeExamBrowser.SystemComponents
{
foreach (ManagementObject queryObj in results)
{
- using (queryObj)
- {
+ using (queryObj)
+ {
foreach (var property in queryObj.Properties)
{
if (property.Name.Equals("DeviceID"))