master
1/**
2 * This file is part of the mingw-w64 runtime package.
3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */
5#ifndef _APISETHANDLE_
6#define _APISETHANDLE_
7
8#include <apiset.h>
9#include <apisetcconv.h>
10#include <minwindef.h>
11
12#ifdef __cplusplus
13extern "C" {
14#endif
15
16#define INVALID_HANDLE_VALUE ((HANDLE) (LONG_PTR)-1)
17
18#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
19 WINBASEAPI WINBOOL WINAPI CloseHandle (HANDLE hObject);
20 WINBASEAPI WINBOOL WINAPI DuplicateHandle (HANDLE hSourceProcessHandle, HANDLE hSourceHandle, HANDLE hTargetProcessHandle, LPHANDLE lpTargetHandle, DWORD dwDesiredAccess, WINBOOL bInheritHandle, DWORD dwOptions);
21#if _WIN32_WINNT >= _WIN32_WINNT_WIN10
22 WINBASEAPI WINBOOL WINAPI CompareObjectHandles (HANDLE hFirstObjectHandle, HANDLE hSecondObjectHandle);
23#endif
24#endif
25
26#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
27 WINBASEAPI WINBOOL WINAPI GetHandleInformation (HANDLE hObject, LPDWORD lpdwFlags);
28 WINBASEAPI WINBOOL WINAPI SetHandleInformation (HANDLE hObject, DWORD dwMask, DWORD dwFlags);
29#endif
30
31#ifdef __cplusplus
32}
33#endif
34#endif