我正在开发 Visual Studio 2010 上的 C++ 软件。由于该软件应该在无法进行人工交互的服务器上运行,我真的需要摆脱这个“program.exe 已停止工作”窗口出现错误时会在发布版本中弹出。我只是希望程序终止(也许还会给出错误消息,但不一定)并且不要让它保持阻塞等待某人单击“关闭程序”按钮。我不得不提到我的机器上有 64 位 Windows 7 Professional。
我已经阅读了几件事,例如:
_set_abort_behavior 函数。这解决了调用 abort() 时的情况,但对于诸如“向量下标超出范围”之类的错误,情况并非如此。
我知道我可以通过异常处理来解决其中一些错误,但并非所有错误都是异常,因此这不能解决我的整个问题。
我还阅读了有关 Dr. Watson 调试器的一些信息,它应该以静默方式终止应用程序,但我的印象是这个调试器不适用于 Windows 7。另外我不知道这个调试器是否能解决我的问题在释放模式...
我发现在我的整个机器上禁用错误报告并不是一个优雅的选择,尽管我读到这也可能是一种替代方案(不是我真正想要的)。
如何在 Visual Studio 中执行此操作?有什么我可以使用的设置吗?
有没有办法在 Visual Studio 中将所有错误转换为异常,以便我可以通过异常处理机制解决问题?(如果这是一个愚蠢的问题,请宽容)
我期待着你的建议。非常感谢您的宝贵时间!
最好的问候,科妮莉亚