implemented wxIsDebuggerRunning() for Win32

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2005-01-08 17:44:46 +00:00
parent 44c5573d2e
commit c50a4038e3
3 changed files with 29 additions and 9 deletions

View File

@ -4213,11 +4213,10 @@ In release mode this function does nothing.
\func{bool}{wxIsDebuggerRunning}{\void}
Returns {\tt true} if the program is running under debugger, {\tt false}
otherwise.
Returns \true if the program is running under debugger, \false otherwise.
Please note that this function is currently only implemented for Mac builds
using CodeWarrior and always returns {\tt false} elsewhere.
Please note that this function is currently only implemented for Win32 and Mac
builds using CodeWarrior and always returns \false elsewhere.

View File

@ -233,12 +233,14 @@
/* other miscellaneous debugger-related functions */
/* ---------------------------------------------------------------------------- */
/* return true if we're running under debugger */
/* */
/* currently this only really works under Mac in CodeWarrior builds, it always */
/* returns false otherwise */
/*
Return true if we're running under debugger.
Currently this only really works under Win32 and Mac in CodeWarrior builds,
it always returns false in other cases.
*/
#ifdef __cplusplus
#ifdef __WXMAC__
#if defined(__WXMAC__) || defined(__WXMSW__)
extern bool WXDLLIMPEXP_BASE wxIsDebuggerRunning();
#else /* !Mac */
inline bool wxIsDebuggerRunning() { return false; }

View File

@ -1036,6 +1036,25 @@ void wxBell()
::MessageBeep((UINT)-1); // default sound
}
bool wxIsDebuggerRunning()
{
// IsDebuggerPresent() is not available under Win95, so load it dynamically
wxDynamicLibrary dll(_T("kernel32.dll"), wxDL_VERBATIM);
typedef BOOL (WINAPI *IsDebuggerPresent_t)();
if ( !dll.HasSymbol(_T("IsDebuggerPresent")) )
{
// no way to know, assume no
return false;
}
return (*(IsDebuggerPresent_t)dll.GetSymbol(_T("IsDebuggerPresent")))() != 0;
}
// ----------------------------------------------------------------------------
// OS version
// ----------------------------------------------------------------------------
wxString wxGetOsDescription()
{
wxString str;