Ste*_*tef 2 c windows cygwin visual-studio-2010 visual-studio
我想禁用(在VS2010 C程序中)GPF发生时弹出屏幕的崩溃对话框窗口(你知道xxx.exe停止工作)
我试过win2008和win7:
- SetErrorMode(SetErrorMode(SEM_NOGPFAULTERRORBOX)|SEM_FAILCRITICALERRORS);
- try/catch (with SEH, but some parts of the code aren't wrapped in)
- SetUnhandledExceptionFilter()
Run Code Online (Sandbox Code Playgroud)
什么都行不通......还是这个该死的窗户
我忘了什么吗?
唯一有效的是修改注册库中的"DontShowUI"键(HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Windows错误报告),但它只是不干净,我更喜欢"编码"解决方案(我不能改变注册我的代码!)
你有好主意吗 ?(除了修复程序本身以避免GPF当然:)
谢谢...
注意:有趣的是,在Cygwin下,崩溃对话框没有出现!
禁用崩溃框的最佳方法是删除导致程序崩溃的任何代码.对于正确的程序,此框永远不会出现.
编辑:至于你的电话实际上有什么问题SetErrorMode,它应该是:
SetErrorMode(SetErrorMode(SEM_NOGPFAULTERRORBOX)
|SEM_FAILCRITICALERRORS|SEM_NOGPFAULTERRORBOX);
Run Code Online (Sandbox Code Playgroud)
或类似的.我认为你误读了你在评论中引用的博客文章.
| 归档时间: |
|
| 查看次数: |
1245 次 |
| 最近记录: |