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