我正在尝试使用“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
ln
.
00400000+47a6c6
之前最近的符号(函数)是模块videoCodec
(也许是llm.dll)中的llm
。符号地址为0078b4a0
,请求地址为符号0xef226
后的偏移量videoCodec
。00400000+47a6c6
之后最近的符号(函数)是模块videoDevice
中的llm
。符号地址为009430a0
.llm
被加载到地址00400000
到00a5c000
.