是否可以在Mac OS X上禁止“应用程序意外退出对话框”?

时间:2010-07-16 11:06:42

标签: macos testing dialog crash

我有一个测试设置,它在OS X上运行一个带有一组不同参数的应用程序,如果/当程序崩溃时重新启动它,并从它停止的地方继续。但是当应用程序崩溃OS X时会引发“应用程序意外退出”对话框,我宁愿避免这种情况,因为它会使机器变得混乱。有没有办法在不修改应用程序源的情况下禁止打开此对话框?如果它对珩磨解决方案有任何帮助,那么脚本设置就是用Python编写的。

例如,在Windows上我处理GPF对话框如下:

SEM_NOGPFAULTERRORBOX = 0x0002
ctypes.windll.kernel32.SetErrorMode(SEM_NOGPFAULTERRORBOX);

理想情况下,我可以在OS X上使用类似的东西。

感谢。

1 个答案:

答案 0 :(得分:2)

安装了开发人员工具(Xcode等)后,您将获得一个名为CrashReporterPrefs的工具。这基本上是某个plist文件的接口,该文件设置全局您希望如何处理崩溃。可能不完全是您正在寻找的,但如果您控制部署环境,它可能会有所帮助。

必须有其他选项,因为Google产品(如Sketchup)会覆盖默认处理程序并安装自己的崩溃报告器。我的猜测是他们为SIGBUS,SIGSEGV等注册了信号处理程序(参见man 2 sigaction)并以某种方式掩盖了MacOSX的崩溃......但我在这里猜测。

我会让其他人问一个问题,为什么你不能修复崩溃。 : - )