aboutsummaryrefslogtreecommitdiff
path: root/core/sys/windows/kernel32.odin
diff options
context:
space:
mode:
authorFranz Höltermann <Francis_the_cat@gmx.de>2024-06-11 09:35:59 +0200
committerFranz Höltermann <Francis_the_cat@gmx.de>2024-06-11 09:35:59 +0200
commit6454c6f0879add3ed018065eff073a75d45229b0 (patch)
tree309134b4dc835d52e7d32781ad243b01ff03fca4 /core/sys/windows/kernel32.odin
parent7058d6f320d4a136a0b9de92b3e3bcb9e791b2ef (diff)
Added some missing functions to core/sys/windows
Diffstat (limited to 'core/sys/windows/kernel32.odin')
-rw-r--r--core/sys/windows/kernel32.odin14
1 files changed, 14 insertions, 0 deletions
diff --git a/core/sys/windows/kernel32.odin b/core/sys/windows/kernel32.odin
index eba275522..d3b5a148b 100644
--- a/core/sys/windows/kernel32.odin
+++ b/core/sys/windows/kernel32.odin
@@ -64,6 +64,7 @@ foreign kernel32 {
RemoveVectoredContinueHandler :: proc(Handle: LPVOID) -> DWORD ---
RaiseException :: proc(dwExceptionCode, dwExceptionFlags, nNumberOfArguments: DWORD, lpArguments: ^ULONG_PTR) -> ! ---
+ SetUnhandledExceptionFilter :: proc(lpTopLevelExceptionFilter: LPTOP_LEVEL_EXCEPTION_FILTER) -> LPTOP_LEVEL_EXCEPTION_FILTER ---
CreateHardLinkW :: proc(lpSymlinkFileName: LPCWSTR,
lpTargetFileName: LPCWSTR,
@@ -464,6 +465,8 @@ foreign kernel32 {
GetHandleInformation :: proc(hObject: HANDLE, lpdwFlags: ^DWORD) -> BOOL ---
RtlCaptureStackBackTrace :: proc(FramesToSkip: ULONG, FramesToCapture: ULONG, BackTrace: [^]PVOID, BackTraceHash: PULONG) -> USHORT ---
+
+ GetSystemPowerStatus :: proc(lpSystemPowerStatus: ^SYSTEM_POWER_STATUS) -> BOOL ---
}
DEBUG_PROCESS :: 0x00000001
@@ -1210,6 +1213,15 @@ SYSTEM_LOGICAL_PROCESSOR_INFORMATION :: struct {
DummyUnion: DUMMYUNIONNAME_u,
}
+SYSTEM_POWER_STATUS :: struct {
+ ACLineStatus: BYTE,
+ BatteryFlag: BYTE,
+ BatteryLifePercent: BYTE,
+ SystemStatusFlag: BYTE,
+ BatteryLifeTime: DWORD,
+ BatteryFullLifeTime: DWORD,
+}
+
/* Global Memory Flags */
GMEM_FIXED :: 0x0000
GMEM_MOVEABLE :: 0x0002
@@ -1228,3 +1240,5 @@ GMEM_INVALID_HANDLE :: 0x8000
GHND :: (GMEM_MOVEABLE | GMEM_ZEROINIT)
GPTR :: (GMEM_FIXED | GMEM_ZEROINIT)
+
+LPTOP_LEVEL_EXCEPTION_FILTER :: PVECTORED_EXCEPTION_HANDLER