我有一个C ++ Windows应用程序(使用Visual Studio 2012构建),该应用程序带有未处理的异常过滤器,该过滤器使用MiniDumpWriteDump
来编写故障转储文件。
在大多数情况下,调用堆栈似乎完全没有意义或不可能。
我用Visual Studio和崩溃的相同EXE文件,相同的DLL和匹配的PDB文件打开小型转储。所有构建都是在启用优化的情况下完成的(我知道这会对调用堆栈质量产生巨大影响)。
在Visual C ++的早期版本中,此问题很少见。
这可能是由地址空间布局随机化(ASLR)引起的,是否有助于将其关闭(至少出于调试目的),还是ASLR不应该引起任何问题?