如何根据内存偏移调查崩溃

时间:2017-06-13 14:35:27

标签: c visual-studio debugging dll memory-address

我的公司正在提供一个DLL,每天都会进行测试。 今天早上它崩溃了,C堆栈跟踪提到了崩溃的以下位置:

[<product>.dll+0x279a30] // this stack trace contains no reference towards any function.

由于DLL是在发布模式下编译的(使用Visual Studio),因此这不是很有趣(Release DLL中没有调试信息)。我已经尝试使用在Debug模式下编译的DLL来重现崩溃,但是没有崩溃。

现在我正在考虑做两个编译:一个用于Debug,一个用于Release模式,如果在Release模式下崩溃,我想使用提到的内存地址在Debug DLL中查找更多信息但是我有一个疑问:我希望Debug和Release DLL中提到的内存地址完全不同(例如,在Release模式下没有断言),所以我担心我的程序没有任何意义。

有人知道我怎么能在这里继续吗?有人知道如何使用C堆栈跟踪中提到的内存地址吗? (为了您的信息,我有* .pdb文件,但我不知道如何使用它们(cvdump.exe和Visual Studio不管理打开文件))

0 个答案:

没有答案