【发布时间】:2011-05-28 18:27:12
【问题描述】:
我在 Windows 98(DOS 模式)下编码,我的程序严重崩溃。我可以很好地重现崩溃,但是我的正常调试技巧(堆栈跟踪,printf 整个事情以隔离崩溃)失败了,因为图形模式(VBE)、DOS 模式和中断处理的组合显然不是 GDB 是为。
我已尝试注释部分代码以隔离问题,但我无法准确追踪崩溃的代码位置。
所以我能得到的只是一堆寄存器。有没有办法从寄存器中检索一行代码(如 EIP)?我正在用 C 编写代码。
【问题讨论】:
-
我认为诀窍是立即从您的计算机中删除 Windows 98 ;D
-
你是从哪一年发布的?
-
@astander 2010,但感觉不像。 @William R Windows 7 不允许非特权程序干扰中断和 BIOS 调用。
标签: c debugging dos windows-98