【发布时间】:2010-10-22 19:00:18
【问题描述】:
这是我的问题。我正在尝试学习如何使用 OllyDBG 在汇编中进行调试。通常,当一个字符串在应用程序中确实存在时,我可以找到指向它的东西,但是,这个字符串来自资源文件(在进行 WinAPI 编程时,使用资源 .rc)。因此,鉴于它在资源数据中,如何找出在反汇编中调用该字符串的位置?
谢谢
【问题讨论】:
标签: c++ winapi assembly disassembly
这是我的问题。我正在尝试学习如何使用 OllyDBG 在汇编中进行调试。通常,当一个字符串在应用程序中确实存在时,我可以找到指向它的东西,但是,这个字符串来自资源文件(在进行 WinAPI 编程时,使用资源 .rc)。因此,鉴于它在资源数据中,如何找出在反汇编中调用该字符串的位置?
谢谢
【问题讨论】:
标签: c++ winapi assembly disassembly
将断点置于 LoadStringW 并等待该字符串。 (当然有条件的BP比反复按[F9]好)
但最好先做一个静态分析(反汇编文件),如果需要,然后使用 OllyDbg 对其进行调试。
例如,在静态分析期间,您可以找到所有 LoadStringW 调用,并通过其 ID 查找加载字符串。
【讨论】:
您应该使用一些资源编辑器(例如ResEdit)检查字符串表并找到您正在搜索的字符串的ID。然后你应该中断 LoadString 函数调用并检查它加载的 ID。
【讨论】: