Отладка приложений



              

Журнал программы Dr. Watson для Windows 98 - часть 2


ds   016f    rw-e  00000000  OOOOd7aO

es   016f    rw-e  00000000  OOOOd7aO

fs   38d7    rw—   81630798  00000037

gs   382f    rw—   00657000  OOOOffff

stack base: 00560000

TIB limits: 0065bOOO - 00660000

Под заголовком — exception record выводится дамп первого поля структуры EXCEPTION_POINTERS, с помощью которого отладчик Dr. Watson уведомляется об исключении:

— exception record —

Exception Code: C0000005 (access violation) 

Exception Address: 0040bd2d (WDBG.EXE:.text+0xad2d)

Exception Info: 00000000

Ffffffff

Код дизассемблера показывает текущее состояние потока. Звездочкой отмечена текущая команда. (Заметьте, что удалены некоторые байты кода дизассемблера, чтобы он уместился по ширине страницы.)

WDBG.ЕХЕ:.text+0xad2d:

>0167:0040bd2d mov ecx,dword ptr [eax+04]

0167:0040bdll push esi

0167:0040bdl2 push edi

0167:0040bdl3 mov eax,cccccccc

0167:0040bdl8 mov dword ptr [ebp-20],eax

0167:0040bdlb mov dword ptr [ebp-lc],eax

0167:0040bdle mov dword ptr febp-18],eax

0167:0040bd21 mov dword ptr [ebp-14],eax

0167:0040bd24 mov dword ptr [ebp-10],eax

0167:0040bd27 mov dword ptr [ebp-20],ecx

0167:0040bd2a mov eax,dword ptr [ebp+Oc] 

WDBG.EXE:.text+0xad2d:

*0167:0040bd2d mov ecx,dword ptr [eax+04]

 0167:0040bd30 cmp dword ptr [ecx],80000003

 0167:0040bd36 jz 0040bd5d = WDBG.EXE:.text+0xad5d

 0167:0040bd38 mov esi,esp 

0167:0040bd3a push 00000382 

0167:0040bd3f push 00420030 

0167:0040bd44 push 00420064 

0167:0040bd49 push +00

0167:0040bd4b call dword ptr [00423ad4] -> BUGSLAYERUTIL.DLLIDiagAssertA 

0167:0040bd51 cmp esi,esp

0167:0040bd53 call 00416b5a = MSVCRTD.DLL!_chkesp




Содержание  Назад