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 use shared::minwindef::{BOOL, DWORD, PBOOL};
7 use um::minwinbase::LPDEBUG_EVENT;
8 use um::winnt::{HANDLE, LPCSTR, LPCWSTR};
9 extern "system" {
IsDebuggerPresent() -> BOOL10     pub fn IsDebuggerPresent() -> BOOL;
DebugBreak()11     pub fn DebugBreak();
OutputDebugStringA( lpOutputString: LPCSTR, )12     pub fn OutputDebugStringA(
13         lpOutputString: LPCSTR,
14     );
OutputDebugStringW( lpOutputString: LPCWSTR, )15     pub fn OutputDebugStringW(
16         lpOutputString: LPCWSTR,
17     );
ContinueDebugEvent( dwProcessId: DWORD, dwThreadId: DWORD, dwContinueStatus: DWORD, ) -> BOOL18     pub fn ContinueDebugEvent(
19         dwProcessId: DWORD,
20         dwThreadId: DWORD,
21         dwContinueStatus: DWORD,
22     ) -> BOOL;
WaitForDebugEvent( lpDebugEvent: LPDEBUG_EVENT, dwMilliseconds: DWORD, ) -> BOOL23     pub fn WaitForDebugEvent(
24         lpDebugEvent: LPDEBUG_EVENT,
25         dwMilliseconds: DWORD,
26     ) -> BOOL;
DebugActiveProcess( dwProcessId: DWORD, ) -> BOOL27     pub fn DebugActiveProcess(
28         dwProcessId: DWORD,
29     ) -> BOOL;
DebugActiveProcessStop( dwProcessId: DWORD, ) -> BOOL30     pub fn DebugActiveProcessStop(
31         dwProcessId: DWORD,
32     ) -> BOOL;
CheckRemoteDebuggerPresent( hProcess: HANDLE, pbDebuggerPresent: PBOOL, ) -> BOOL33     pub fn CheckRemoteDebuggerPresent(
34         hProcess: HANDLE,
35         pbDebuggerPresent: PBOOL,
36     ) -> BOOL;
WaitForDebugEventEx( lpDebugEvent: LPDEBUG_EVENT, dwMilliseconds: DWORD, ) -> BOOL37     pub fn WaitForDebugEventEx(
38         lpDebugEvent: LPDEBUG_EVENT,
39         dwMilliseconds: DWORD,
40     ) -> BOOL;
41 }
42