Debugging 在WinDbg中,我可以使用没有符号的软件断点吗?

Debugging 在WinDbg中,我可以使用没有符号的软件断点吗?,debugging,visual-c++,windbg,Debugging,Visual C++,Windbg,我在WinDbg中使用软件断点以中断给定地址时遇到问题 是Visual C++ 6 MFC可执行文件>强>没有符号< /强>(相信我,我不能生成符号)。< /P> 假设我的可执行映像名为image00400000。使用软件断点(bp): 0:000>bp图像00400000+0x003ba1eb 0:000>bl 0 e 007ba1eb 0001(0001)0:***图像00400000+0x3ba1eb 0:000>g 我从.map文件中获取相对地址(0x003ba1eb)(这是我得到的)。

我在WinDbg中使用软件断点以中断给定地址时遇到问题

是Visual C++ 6 MFC可执行文件>强>没有符号< /强>(相信我,我不能生成符号)。< /P> 假设我的可执行映像名为

image00400000
。使用软件断点(bp):

0:000>bp图像00400000+0x003ba1eb

0:000>bl

0 e 007ba1eb 0001(0001)0:***图像00400000+0x3ba1eb

0:000>g

我从.map文件中获取相对地址(0x003ba1eb)(这是我得到的)。我选了一行,我确信它会被执行,但是根本没有停止

有人有什么想法吗?我会很感激的。谢谢大家!


PD:如果还有什么需要解释或需要更多信息,请给我留言:-)

要添加符号,您需要进行调试构建

构建菜单项

设置活动配置

选择调试配置,而不是版本配置。
重建所有内容,您的符号应该在那里。

很抱歉,我还不能创建注释(太新)

对可用信息进行具体说明有点棘手。我想可能是断点地址计算不正确。在这种情况下,我会尝试将断点地址计算为:模块开始+代码开始+映射文件的代码偏移量。也许这就是你所做的(除非我弄错了;-))

还值得注意的是,bp地址需要在指令边界上对齐。如果没有,那么它将无法正确设置。如果您不得不猜测试图将断点插入某个特定函数中,这可能是可能的


如果您想在调试器中详细说明程序停止的条件,可能会有所帮助。

Look。。。除了在发布版本中也可以生成符号这一事实之外,我还要重申,由于我使用的库,我无法生成符号。伙计-别生气-他只是想帮你。我向你道歉。在我看来,您的问题文本似乎表明您无法使用符号构建可执行文件。我想不起来原因是什么。我无意冒犯你。我向你道歉!无论如何,谢谢你的帮助!