1 // Copyright © 2017 winapi-rs developers
2 // Licensed under the Apache License, Version 2.0
3 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
4 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
5 // All files in the project carrying such notice may not be copied, modified, or distributed
6 // except according to those terms.
7 use shared::minwindef::{BOOL, DWORD, PBOOL};
8 use um::minwinbase::LPDEBUG_EVENT;
9 use um::winnt::{HANDLE, LPCSTR, LPCWSTR};
10 extern "system" {
IsDebuggerPresent() -> BOOL11     pub fn IsDebuggerPresent() -> BOOL;
DebugBreak()12     pub fn DebugBreak();
OutputDebugStringA( lpOutputString: LPCSTR, )13     pub fn OutputDebugStringA(
14         lpOutputString: LPCSTR,
15     );
OutputDebugStringW( lpOutputString: LPCWSTR, )16     pub fn OutputDebugStringW(
17         lpOutputString: LPCWSTR,
18     );
ContinueDebugEvent( dwProcessId: DWORD, dwThreadId: DWORD, dwContinueStatus: DWORD, ) -> BOOL19     pub fn ContinueDebugEvent(
20         dwProcessId: DWORD,
21         dwThreadId: DWORD,
22         dwContinueStatus: DWORD,
23     ) -> BOOL;
WaitForDebugEvent( lpDebugEvent: LPDEBUG_EVENT, dwMilliseconds: DWORD, ) -> BOOL24     pub fn WaitForDebugEvent(
25         lpDebugEvent: LPDEBUG_EVENT,
26         dwMilliseconds: DWORD,
27     ) -> BOOL;
DebugActiveProcess( dwProcessId: DWORD, ) -> BOOL28     pub fn DebugActiveProcess(
29         dwProcessId: DWORD,
30     ) -> BOOL;
DebugActiveProcessStop( dwProcessId: DWORD, ) -> BOOL31     pub fn DebugActiveProcessStop(
32         dwProcessId: DWORD,
33     ) -> BOOL;
CheckRemoteDebuggerPresent( hProcess: HANDLE, pbDebuggerPresent: PBOOL, ) -> BOOL34     pub fn CheckRemoteDebuggerPresent(
35         hProcess: HANDLE,
36         pbDebuggerPresent: PBOOL,
37     ) -> BOOL;
WaitForDebugEventEx( lpDebugEvent: LPDEBUG_EVENT, dwMilliseconds: DWORD, ) -> BOOL38     pub fn WaitForDebugEventEx(
39         lpDebugEvent: LPDEBUG_EVENT,
40         dwMilliseconds: DWORD,
41     ) -> BOOL;
42 }
43