我生产的代码每天会崩溃一两次,因为一周。 此崩溃是由于内存堆损坏
为了发现我的应用程序出了什么问题,我尝试使用GFlags。
我已经使用GFlags激活了页面堆(我已经在windows注册表中检查过我的应用程序的条目已经很好地创建了)
应用程序在Windows下运行,我使用MSCV2010进行了开发。
我将应用程序置于DEBUG模式的生产中,并在microsoft visual stuio中使用“附加到进程”功能。
当崩溃发生时,我现在有以下调用堆栈:
wow64!Wow64NotifyDebugger+0x9
wow64!Wow64KiRaiseException+0x172
wow64!Wow64SystemServiceEx+0xd6
wow64cpu!ServiceNoTurbo+0x28
wow64!RunCpuSimulation+0xa
wow64!Wow64LdrpInitialize+0x2ed
ntdll!LdrpInitialize+0x2aa
ntdll!KiUserApcDispatcher+0x15 (TrapFrame @ 00000000`03e3fb38)
kernel32!BaseThreadStartThunk
glurp ......
在解决我的问题时,我似乎并不是更先进。
有关使用GFlags的任何建议吗?
更一般地说,我可以期待GFlags可以告诉我应用程序中的错误在哪里?
答案 0 :(得分:1)
也许这篇文章会有所帮助:32-bit stack traces from x64 complete dumps
您可以使用Debug>Save dump as
使用visual studio保存转储文件
然后可以在windbg中打开该转储文件。