11#if defined(BI_COMP_BORLANDC)
19# if !defined(USE_MEMCHECK)
37# if ((__GNUC__ != 3) || ((__GNUC_MINOR__ != 3) && (__GNUC_MINOR__ != 2)))
38#if !defined(_WINTRUST_) && !defined(WINTRUST_H)
46#if defined(BI_COMP_MSC)
48#pragma warning(disable:4091)
53#if defined(BI_COMP_MSC)
59static const tchar imgHlpStr[] =
_T(
"imagehlp.dll");
60static const char SymFunctionTableAccessStr[] =
"SymFunctionTableAccess";
61static const char SymGetModuleInfoStr[] =
"SymGetModuleInfo";
62static const char SymLoadModuleStr[] =
"SymLoadModule";
63static const char SymGetSymFromAddrStr[] =
"SymGetSymFromAddr";
64static const char UnDecorateSymbolNameStr[] =
"UnDecorateSymbolName";
65static const char SymUnDNameStr[] =
"SymUnDName";
66static const char SymInitializeStr[] =
"SymInitialize";
67static const char SymGetOptionsStr[] =
"SymGetOptions";
68static const char SymSetOptionsStr[] =
"SymSetOptions";
69static const char StackWalkStr[] =
"StackWalk";
81 static TModule& GetModule();
91 static DWORD SymGetOptions();
102TImageHelp::GetModule()
104 static TModule
imgModule(imgHlpStr,
true,
true,
false);
108# if defined(BI_COMP_BORLANDC)
162DWORD TImageHelp::SymGetOptions()
200#define MODULE_NAME_LEN 64
201#define SYMBOL_NAME_LEN 128
203#if defined(_DEF_DECLARED)
205#define TRACE_STACK(m)\
207 if(__OwlDiagGroupDef.IsEnabled()){\
208 tostringstream out; out << m;\
209 __OwlDiagGroupDef.Trace(out.str().c_str(), 0, __FILE__, __LINE__);\
214 #define TRACE_STACK(m)
298 u.sym.MaxNameLength = 255;
346__TTraceClipboardData::__TTraceClipboardData(
uint32 target)
355__TTraceClipboardData::~__TTraceClipboardData()
361 if(!OpenClipboard(
NULL))
392 Target &= ~OWL_STACK_DUMP_TARGET_CLIPBOARD;
406 Target &= ~OWL_STACK_DUMP_TARGET_CLIPBOARD;
414 if(Size > (1024L*1024L)){
416 Target &= ~OWL_STACK_DUMP_TARGET_CLIPBOARD;
422 Target &= ~OWL_STACK_DUMP_TARGET_CLIPBOARD;
436 Target &= ~OWL_STACK_DUMP_TARGET_CLIPBOARD;
452 clipboardData.SendOut(
"=== begin OwlDumpStack output ===\r\n");
458 DWORD dw = TImageHelp::SymGetOptions();
460 TImageHelp::SymSetOptions(
dw);
484#elif defined(_M_MRX000)
488#elif defined(_M_ALPHA)
497#error Unknown Target Machine
513 "OwlDumpStack Error: IMAGEHLP.DLL wasn't found. "
514 "GetLastError() returned 0x%8.8X\r\n",
dw);
538 clipboardData.SendOut(
"=== end OwlDumpStack() output ===\r\n");
541# if defined(BI_COMP_BORLANDC)
Definition of container classes used and made available by OWL.
#define MODULE_NAME_LEN
defined(UNIX)
#define OWL_STACK_DUMP_TARGET_CLIPBOARD
#define OWL_STACK_DUMP_TARGET_TRACE
#define OWL_STACK_DUMP_TARGET_ODS
Definition of class TModule.
Object Windows Library (OWLNext Core)
#define COUNTOF(s)
Array element count Important: Only use this with an argument of array type.
Definition of container classes used and made available by OWL.