【问题标题】:"<Program> has stopped working" explanation“<Program> 已停止工作”解释
【发布时间】:2012-09-11 16:17:59
【问题描述】:

当 Windows 显示此消息时,有人可以解释一下吗? 我该怎么做才能阻止我的程序抛出这个异常?

我有一个 Delphi Windows 窗体程序,它在执行一些 SQL 操作后会短暂地抛出此消息。 所以我执行 SQL,起初一切似乎都很好,但在窗口通过显示此消息杀死它之后的随机时间......

有趣的是,它只在调试时发生。 当我不调试时,它运行非常稳定。 编辑:使用 RAD-Studio2009

我不想完全关闭消息(仅使用 Google 找到的提示) 我想停止我的程序,给 Windows 一个这样做的理由。

【问题讨论】:

    标签: delphi windows-7 delphi-2009


    【解决方案1】:

    当未处理的异常从您的应用程序中泄漏时,Windows 会显示此消息。这是一种致命的情况。您的应用程序发生了一些非常错误的事情,因为应该全部捕获异常。

    您需要弄清楚是什么引发了异常以及为什么它没有被捕获。第一步是展开错误对话框的详细信息,找出故障发生在哪个模块,故障是什么等等。这至少应该会产生一些高级线索。

    Delphi 调试器很可能无法帮助您解决此类故障。您需要配置系统以安排由 Windows 错误报告服务生成故障转储。然后你可以在WinDbg之类的工具中加载错误报告并尝试解决。

    【讨论】:

    • 嗯...我将搜索一个未处理的异常,但这仍然不能解释为什么它只在调试器中运行时发生......
    • @BigM 好吧,我们很难解释清楚!
    • 我处理了所有可能发生的异常,但仍然没有改变......还有其他想法吗?
    • 这将是一个未处理的异常,或者是一个致命的异常。获取故障转储并对其进行调试。
    • 我终于在初始化部分使用的函数中发现了问题 我正在使用同事的函数,这似乎阻止了我的程序回答 Windows 消息,我现在在使用它们后调用 Application.Processmessages一切都很好
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-22
    • 2016-04-26
    • 2014-10-10
    • 2016-12-14
    • 2018-02-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多