From c7fcd6094854cc196a56ec3edaa71c6791cc03ac Mon Sep 17 00:00:00 2001 From: Jonas Nilson Date: Wed, 5 Oct 2022 18:57:21 +0200 Subject: [PATCH] CA1060: Move P/Invokes to NativeMethods class --- Source/IdleMasterExtended/frmMain.cs | 29 +++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/Source/IdleMasterExtended/frmMain.cs b/Source/IdleMasterExtended/frmMain.cs index aa17bdf..f489236 100644 --- a/Source/IdleMasterExtended/frmMain.cs +++ b/Source/IdleMasterExtended/frmMain.cs @@ -22,17 +22,6 @@ namespace IdleMasterExtended { public partial class frmMain : Form { - [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)] - private static extern ExecutionState SetThreadExecutionState(ExecutionState esFlags); - [FlagsAttribute] - private enum ExecutionState : uint - { - EsAwaymodeRequired = 0x00000040, - EsContinuous = 0x80000000, - EsDisplayRequired = 0x00000002, - EsSystemRequired = 0x00000001 - } - private Statistics statistics = new Statistics(); public List AllBadges { get; set; } @@ -648,8 +637,8 @@ private void RefreshGamesStateListView() #endregion #region MISC - private static void PreventSleep() => SetThreadExecutionState(ExecutionState.EsContinuous | ExecutionState.EsSystemRequired); - private static void AllowSleep() => SetThreadExecutionState(ExecutionState.EsContinuous); + private static void PreventSleep() => NativeMethods.SetThreadExecutionState(NativeMethods.ExecutionState.EsContinuous | NativeMethods.ExecutionState.EsSystemRequired); + private static void AllowSleep() => NativeMethods.SetThreadExecutionState(NativeMethods.ExecutionState.EsContinuous); private static void CreateShutdownProcess(String parameters) { @@ -1492,4 +1481,18 @@ private void ApplyIcons() } #endregion } +} + +internal static class NativeMethods +{ + [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)] + internal static extern ExecutionState SetThreadExecutionState(ExecutionState esFlags); + [FlagsAttribute] + internal enum ExecutionState : uint + { + EsAwaymodeRequired = 0x00000040, + EsContinuous = 0x80000000, + EsDisplayRequired = 0x00000002, + EsSystemRequired = 0x00000001 + } } \ No newline at end of file