1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 //! handleapi include file
7 use shared::minwindef::{BOOL, DWORD, LPDWORD, LPHANDLE};
8 use um::winnt::HANDLE;
9 pub const INVALID_HANDLE_VALUE: HANDLE = -1isize as HANDLE;
10 extern "system" {
CloseHandle( hObject: HANDLE, ) -> BOOL11     pub fn CloseHandle(
12         hObject: HANDLE,
13     ) -> BOOL;
DuplicateHandle( hSourceProcessHandle: HANDLE, hSourceHandle: HANDLE, hTargetProcessHandle: HANDLE, lpTargetHandle: LPHANDLE, dwDesiredAccess: DWORD, bInheritHandle: BOOL, dwOptions: DWORD, ) -> BOOL14     pub fn DuplicateHandle(
15         hSourceProcessHandle: HANDLE,
16         hSourceHandle: HANDLE,
17         hTargetProcessHandle: HANDLE,
18         lpTargetHandle: LPHANDLE,
19         dwDesiredAccess: DWORD,
20         bInheritHandle: BOOL,
21         dwOptions: DWORD,
22     ) -> BOOL;
CompareObjectHandles( hFirstObjectHandle: HANDLE, hSecondObjectHandle: HANDLE, ) -> BOOL23     pub fn CompareObjectHandles(
24         hFirstObjectHandle: HANDLE,
25         hSecondObjectHandle: HANDLE,
26     ) -> BOOL;
GetHandleInformation( hObject: HANDLE, lpdwFlags: LPDWORD, ) -> BOOL27     pub fn GetHandleInformation(
28         hObject: HANDLE,
29         lpdwFlags: LPDWORD,
30     ) -> BOOL;
SetHandleInformation( hObject: HANDLE, dwMask: DWORD, dwFlags: DWORD, ) -> BOOL31     pub fn SetHandleInformation(
32         hObject: HANDLE,
33         dwMask: DWORD,
34         dwFlags: DWORD,
35     ) -> BOOL;
36 }
37