c - 在 Windows 98 上调试 : Get code line from EIP

标签 c debugging dos windows-98

我正在 Windows 98(DOS 模式)中编码,我的程序严重崩溃。我可以很好地重现崩溃,但是我的正常调试技巧(堆栈跟踪、printf 来隔离崩溃的整个过程)失败了,因为图形模式(VBE)、DOS 模式和中断处理的组合显然不是 GDB 的样子专为。

我尝试注释部分代码来隔离问题,但无法准确跟踪崩溃的代码位置。

所以我能得到的只是一堆寄存器。有没有办法从寄存器(如EIP)中检索一行代码?我正在用 C 编写代码。

最佳答案

经过一番谷歌搜索,我发现了一些GDB documentation与此:

info symbol addr

使用此命令似乎是我能找到的从地址获取函数名称的最接近的方法。它不会给出确切的代码行,但总比没有好。

关于c - 在 Windows 98 上调试 : Get code line from EIP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4498593/

相关文章:

objective-c - 有类似 "jump to"或 "go to"的东西吗?

c 中的条件不满足

c - outportb和8086汇编中的out指令有明显区别吗?

c++ - 在 Turbo C++ 3.0 的 16 位 Dos 5 上使用 inp()

C程序: function not being called from main

c - 如何打印带有字母的板

Android 调试器无法连接到进程(应用程序)

c++ - 需要帮助调试 “attribute parser”! HackerRank的C++问题

c# - 调试在 visual studio 宏中引用的自定义 dll

file - 从txt文件(程序集)中读取和写入