diff --git a/core/sys/windows/kernel32.odin b/core/sys/windows/kernel32.odin index c48ea4ccf..e5163bac7 100644 --- a/core/sys/windows/kernel32.odin +++ b/core/sys/windows/kernel32.odin @@ -342,6 +342,22 @@ foreign kernel32 { hTemplateFile: HANDLE, ) -> HANDLE --- + LockFileEx :: proc( + hFile: HANDLE, + dwFLags: DWORD, + dwReserved: DWORD, + nNumberOfBytesToLockLow: DWORD, + nNumberOfBytesToLockHigh: DWORD, + lpOverlapped: ^LPOVERLAPPED, + ) -> BOOL --- + UnlockFileEx :: proc( + hFile: HANDLE, + dwReserved: DWORD, + nNumberOfBytesToUnlockLow: DWORD, + nNumberOfBytesToLockHigh: DWORD, + lpOverlapped: ^LPOVERLAPPED, + ) -> BOOL --- + GetFileTime :: proc( hFile: HANDLE, lpCreationTime: LPFILETIME, @@ -684,6 +700,9 @@ FILE_MAP_RESERVE :: DWORD(0x80000000) FILE_MAP_TARGETS_INVALID :: DWORD(0x40000000) FILE_MAP_LARGE_PAGES :: DWORD(0x20000000) +LOCKFILE_FAIL_IMMEDIATELY :: DWORD (0x00000001) +LOCKFILE_EXCLUSIVE_LOCK :: DWORD(0x00000002) + // Flags for `SetFileCompletionNotificationModes`. FILE_SKIP_COMPLETION_PORT_ON_SUCCESS :: 0x1 FILE_SKIP_SET_EVENT_ON_HANDLE :: 0x2