我有一个已转换为 Delphi 2009 的应用程序我有“字符串格式检查”和标准内存管理器。我在http://www.microsoft.com/whdc/devtools/debugging/install64bit.mspx下载了 MS 调试工具并获得了一些调试文件,但我不知道该怎么做。我想要一些关于从这里去哪里的指示。下面是调试文件的顶部(底部已加载所有驱动程序);
打开的日志文件 'c:\debuglog.txt'
1:kd> .sympath srv*c:\symbols*http://msdl.microsoft.com/downloads/symbols
符号搜索路径为:srv*c:\symbols*http://msdl.microsoft.com/downloads/symbols
扩展符号搜索路径为:srv*c:\symbols*http://msdl.microsoft.com/downloads/symbols
1: kd> .reload;!分析-v;r;kv;lmnt;.logclose;q
加载内核符号
..................................................... ......
..................................................... .....................
…………………………………………………………………………………………………………
加载用户符号
加载卸载的模块列表
...........
****************************************************** *****************************
* *
*错误检查分析*
* *
****************************************************** *****************************
UNEXPECTED_KERNEL_MODE_TRAP (7f)
这意味着在内核模式中发生了一个陷阱,它是一种陷阱
不允许内核拥有/捕获(绑定陷阱)或
总是立即死亡(双重错误)。中的第一个数字
bugcheck 参数是陷阱的数量(8 = 双重错误等)
请查阅 Intel x86 系列手册以了解有关这些内容的更多信息
陷阱是。这是这些代码的*部分*:
如果 kv 显示 taskGate
在冒号之前的部分使用 .tss,然后是 kv。
否则,如果 kv 显示陷阱框
在该值上使用 .trap
别的
.trap 在适当的框架上将显示陷阱的位置
(在 x86 上,这将是 KiTrap 程序附带的 ebp)
万一
然后 kb 将显示更正后的堆栈。
论据:
Arg1:0000000000000008,EXCEPTION_DOUBLE_FAULT
Arg2:0000000080050033
Arg3:00000000000006f8
Arg4: fffff80001ee1678
调试细节:
------------------
BUGCHECK_STR:0x7f_8
CUSTOMER_CRASH_COUNT: 4
DEFAULT_BUCKET_ID:COMMON_SYSTEM_FAULT
PROCESS_NAME:SomeApplication.e
当前_IRQL:1
异常记录:fffffa60087b43c8 -- (.exr 0xfffffa60087b43c8)
.exr 0xfffffa60087b43c8
异常地址:fffff80001ed0150 (nt!RtlVirtualUnwind+0x0000000000000250)
异常代码:10000004
异常标志:00000000
数量参数:2
参数[0]:0000000000000000
参数[1]:00000000000000d8
TRAP_FRAME: fffffa60087b4470 -- (.trap 0xfffffa60087b4470)
.trap 0xfffffa60087b4470
注意:陷阱帧不包含所有寄存器。
某些寄存器值可能为零或不正确。
rax=0000000000000050 rbx=0000000000000000 rcx=0000000000000004
rdx=00000000000000d8 rsi=0000000000000000 rdi=0000000000000000
撕裂=fffff80001ed0150 rsp=fffffa60087b4600 rbp=fffffa60087b4840
r8=0000000000000006 r9=fffff80001e4e000 r10=ffffffffffffff88
r11=fffff8000204c000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei pl zr na po nc
nt!RtlVirtualUnwind+0x250:
fffff800`01ed0150 488b02 mov rax,qword ptr [rdx] ds:00000000`000000d8=???????????????????
。陷阱
重置默认范围
LAST_CONTROL_TRANSFER:从 fffff80001ea81ee 到 fffff80001ea8450
堆栈文本:
fffffa60`005f1a68 fffff800`01ea81ee : 00000000`0000007f 00000000`00000008 00000000`80050033 00000000`000006f8 : nt!KeBugCheckEx
fffffa60`005f1a70 fffff800`01ea6a38 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiBugCheckDispatch+0x6e
fffffa60`005f1bb0 fffff800`01ee1678 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiDoubleFaultAbort+0xb8
fffffa60`087b3c90 fffff800`01ea82a9:fffffa60`087b43c8 00000000`00000001 fffffa60`087b4470 00000000`0000023b:nt!KiDispatchException+0x34
fffffa60`087b4290 fffff800`01ea70a5 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000001 : nt!KiExceptionDispatch+0xa9
fffffa60`087b4470 fffff800`01ed0150 : fffffa60`087b5498 fffffa60`087b4e70 fffff800`01f95190 fffff800`01e4e000 : nt!KiPageFault+0x1e5
fffffa60`087b4600 fffff800`01ed3f78 : fffffa60`00000001 00000000`00000000 00000000`00000000 ffffffff`ffffff88 : nt!RtlVirtualUnwind+0x250
fffffa60`087b4670 fffff800`01ee1706:fffffa60`087b5498 fffffa60`087b4e70 fffffa60`00000000 00000000`00000000:nt!RtlDispatchException+0x118
fffffa60`087b4d60 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiDispatchException+0xc2
堆栈命令:kb
FOLLOWUP_IP:
nt!KiDoubleFaultAbort+b8
fffff800`01ea6a38 90 无
SYMBOL_STACK_INDEX:2
SYMBOL_NAME: nt!KiDoubleFaultAbort+b8
FOLLOWUP_NAME:机器所有者
模块名称:nt
IMAGE_NAME:ntkrnlmp.exe
DEBUG_FLR_IMAGE_TIMESTAMP:49e0237f
FAILURE_BUCKET_ID: X64_0x7f_8_nt!KiDoubleFaultAbort+b8
BUCKET_ID: X64_0x7f_8_nt!KiDoubleFaultAbort+b8
跟进:MachineOwner
---------
rax=fffffa60005f1b70 rbx=fffffa60087b43c8 rcx=000000000000007f
rdx=0000000000000008 rsi=fffffa60087b4470 rdi=fffff80001f9bfa4
撕裂=fffff80001ea8450 rsp=fffffa60005f1a68 rbp=fffffa60005f1c30
r8=0000000080050033 r9=00000000000006f8 r10=fffff80001ee1678
r11=fffffa60087b4468 r12=0000000000000000 r13=fffffa60087b4290
r14=fffff8000205149c r15=fffff80001e4e000
iopl=0 nv up ei ng nz na pe nc
cs=0010 ss=0018 ds=002b es=002b fs=0053 gs=002b efl=00000282
nt!KeBugCheckEx:
fffff800`01ea8450 48894c2408 mov qword ptr [rsp+8],rcx ss:0018:fffffa60`005f1a70=000000000000007f
Child-SP RetAddr : Args to Child : 调用站点
fffffa60`005f1a68 fffff800`01ea81ee : 00000000`0000007f 00000000`00000008 00000000`80050033 00000000`000006f8 : nt!KeBugCheckEx
fffffa60`005f1a70 fffff800`01ea6a38 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiBugCheckDispatch+0x6e
fffffa60`005f1bb0 fffff800`01ee1678 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiDoubleFaultAbort+0xb8 (Trapf1) @fffffa6
fffffa60`087b3c90 fffff800`01ea82a9:fffffa60`087b43c8 00000000`00000001 fffffa60`087b4470 00000000`0000023b:nt!KiDispatchException+0x34
fffffa60`087b4290 fffff800`01ea70a5 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000001 : nt!KiExceptionDispatch+0xa9
fffffa60`087b4470 fffff800`01ed0150 : fffffa60`087b5498 fffffa60`087b4e70 fffff800`01f95190 fffff800`01e4e000 : nt!KiPageFault+0x1e5 (TrapFrame @ fffffa60`087b4470)
fffffa60`087b4600 fffff800`01ed3f78 : fffffa60`00000001 00000000`00000000 00000000`00000000 ffffffff`ffffff88 : nt!RtlVirtualUnwind+0x250
fffffa60`087b4670 fffff800`01ee1706:fffffa60`087b5498 fffffa60`087b4e70 fffffa60`00000000 00000000`00000000:nt!RtlDispatchException+0x118
fffffa60`087b4d60 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiDispatchException+0xc2