2

我用 CreateProcess 创建了一个孩子并等待它完成。这个过程很可能会崩溃。是否可以防止孩子出现“%PROGRAMNAME% 停止工作”对话框?

4

1 回答 1

4

孩子是您自己的代码(即,您可以修改源代码吗)?如果是,您可以捕获未处理的异常并退出 - 使用SetUnhandledExceptionFilter函数。

如果不是,那么您可以作为调试器附加到进程(使用 DEBUG_ONLY_THIS_PROCESS 的 CreateFile)并运行一个简单的事件循环(参见MSDN 上的主题)。

我似乎记得有一个系统范围的注册表项来禁用默认的 SEH 对话框,但我找不到它,所以我可能弄错了。这对您的情况来说是否太粗糙了?

于 2012-08-12T15:22:15.207 回答