diff options
author | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2010-11-17 17:01:51 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2010-11-17 17:01:51 +0100 |
commit | d1c08e68ccf48c99606da64bfead422278c39e49 (patch) | |
tree | e72fec5a112e9ca4c55ebf8e770da4525d7b4b1c /src/plugins/debugger/shared/dbgwinutils.h | |
parent | 740eb6a98718019146e05e962fa55fc13c385e63 (diff) | |
download | qt-creator-d1c08e68ccf48c99606da64bfead422278c39e49.tar.gz |
Debugger: Move some Windows functionality around.
Preparing the introduction of the new CDB engine.
Diffstat (limited to 'src/plugins/debugger/shared/dbgwinutils.h')
-rw-r--r-- | src/plugins/debugger/shared/dbgwinutils.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/plugins/debugger/shared/dbgwinutils.h b/src/plugins/debugger/shared/dbgwinutils.h index 8f841acd5c..5849ba7717 100644 --- a/src/plugins/debugger/shared/dbgwinutils.h +++ b/src/plugins/debugger/shared/dbgwinutils.h @@ -33,6 +33,7 @@ #include <QtCore/QList> QT_FORWARD_DECLARE_CLASS(QString) +QT_FORWARD_DECLARE_CLASS(QTextStream) namespace Debugger { namespace Internal { @@ -59,6 +60,29 @@ QString winNormalizeFileName(const QString &f); bool isWinProcessBeingDebugged(unsigned long pid); +// Special exception codes. +enum { winExceptionCppException = 0xe06d7363, + winExceptionStartupCompleteTrap = 0x406d1388, + winExceptionRpcServerUnavailable = 0x6ba, + winExceptionRpcServerInvalid = 0x6a6, + winExceptionDllNotFound = 0xc0000135, + winExceptionDllEntryPointNoFound = 0xc0000139, + winExceptionDllInitFailed = 0xc0000142, + winExceptionMissingSystemFile = 0xc0000143, + winExceptionAppInitFailed = 0xc0000143 +}; + +// Format windows Exception +void formatWindowsException(unsigned long code, quint64 address, + unsigned long flags, quint64 info1, quint64 info2, + QTextStream &str); +// Check for access violation, etc. +bool isFatalWinException(long code); + +// Check for EXCEPTION_BREAKPOINT, EXCEPTION_SINGLE_STEP +bool isDebuggerWinException(long code); + + } // namespace Internal } // namespace Debugger |