From 4871ad4707ea5283091201561d5c6450dc65a999 Mon Sep 17 00:00:00 2001
From: marcoonthegit <marcov@pascalprogramming.org>
Date: Fri, 3 Feb 2023 10:34:57 +0100
Subject: [PATCH] * SetThreadExecutionState

---
 rtl/win/wininc/defines.inc | 3 +++
 rtl/win/wininc/func.inc    | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/rtl/win/wininc/defines.inc b/rtl/win/wininc/defines.inc
index 7ef48cdd36..aafe1e2fd1 100644
--- a/rtl/win/wininc/defines.inc
+++ b/rtl/win/wininc/defines.inc
@@ -6416,6 +6416,9 @@ const
     GR_GDIOBJECTS_PEAK  = 2;       { Peak count of GDI objects }
     GR_USEROBJECTS_PEAK = 4;       { Peak count of USER objects }
 
+    ES_CONTINUOUS         = dword($80000000);
+    ES_DISPLAY_REQUIRED   = dword($00000002);
+    ES_SYSTEM_REQUIRED    = dword($00000001);
 {$endif read_interface}
 
 {$ifdef read_implementation}
diff --git a/rtl/win/wininc/func.inc b/rtl/win/wininc/func.inc
index cc72f41862..0c59e75e6a 100644
--- a/rtl/win/wininc/func.inc
+++ b/rtl/win/wininc/func.inc
@@ -1342,7 +1342,7 @@ function CONSOLE_REAL_OUTPUT_HANDLE : HANDLE;
 
   // only in widechar variant.
   function GetDateFormatEx(LocaleName : pwidechar;Flags : DWORD;Date : PSYSTEMTIME; Format : pwidechar; DateBuffer : pwidechar; BufferLen  : longint; Calendar : pwidechar) : BOOL; stdcall; external 'kernel32' name 'GetDateFormatEx';
-
+  function SetThreadExecutionState( EXECUTION_STATE : Cardinal ) : Cardinal; stdcall; external 'kernel32.dll' name 'SetThreadExecutionState';
 {$endif read_interface}