Files
HandyControl/src/Shared/HandyControl_Shared/Tools/Helper/SystemHelper.cs
T

30 lines
1.0 KiB
C#

using System.Runtime.InteropServices;
using HandyControl.Data;
using HandyControl.Tools.Interop;
using Microsoft.Win32;
namespace HandyControl.Tools.Helper
{
internal class SystemHelper
{
public static SystemVersionInfo GetSystemVersionInfo()
{
var osv = new InteropValues.RTL_OSVERSIONINFOEX();
osv.dwOSVersionInfoSize = (uint) Marshal.SizeOf(osv);
InteropMethods.Gdip.RtlGetVersion(out osv);
return new SystemVersionInfo((int) osv.dwMajorVersion, (int) osv.dwMinorVersion, (int) osv.dwBuildNumber);
}
private const string SkinTypeRegistryKeyName = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize";
private const string SkinTypeRegistryValueName = "AppsUseLightTheme";
public static bool DetermineIfInLightThemeMode()
{
var value = Registry.GetValue(SkinTypeRegistryKeyName, SkinTypeRegistryValueName, "0");
return value != null && value.ToString() != "0";
}
}
}