如何解释“ln”cmd 输出(WinDbg)?

问题描述 投票:0回答:1

我正在尝试使用“ln”cmd 查找应用程序出现故障的位置,这通常应该有助于解决这个问题。 47a6c6 是日志中报告的故障偏移量。我只是想知道我与代码中有关符号之前/之后的信息有什么关系。

**0000000000400000** 0000000000a5c000   llm   ...

- ln 00400000+47a6c6

我得到了这个:

(000000000078b4a0)   llm!videoCodec+0xef226   |  (00000000009430a0)   llm!videoDevice

你能解释一下它到底是什么意思吗?我应该如何处理它?

解决方案:

看起来 47a6c6 已经是最终的错误地址了。 (04-01-23 15:39:27.638) 在 47a6c6 的 Ctrl(0) 中出现异常 c0000005。开始+故障偏移量=47a6c6。所以,我找到了应用程序失败的功能。 c:*****\llmgroup\llm\digimot.cpp(5705)+0x3 (0000000000478ed0) llm!CtrlThread+0x17f6 | (0000000000480450) llm!CDigiMotion::MemberThreadOpen

c++ debugging windbg memory-address
1个回答
1
投票

手册:

ln
.

  1. 地址
    00400000+47a6c6
    之前最近的符号(函数)是模块
    videoCodec
    (也许是llm.dll)中的
    llm
    。符号地址为
    0078b4a0
    ,请求地址为符号
    0xef226
    后的偏移量
    videoCodec
  2. 地址
    00400000+47a6c6
    之后最近的符号(函数)是模块
    videoDevice
    中的
    llm
    。符号地址为
    009430a0
    .
  3. 模块
    llm
    被加载到地址
    00400000
    00a5c000
    .
© www.soinside.com 2019 - 2024. All rights reserved.