【问题标题】:Unhandled handle exception?未处理的句柄异常?
【发布时间】:2012-07-25 19:35:28
【问题描述】:

我对 C++ 和 .Net/WinForms 感到困惑。我编写了代码来启动后台工作程序以检查用户输入对 Web 服务器。代码如下:

    try {
        loginworker->RunWorkerAsync();                       
    }
    catch(System::InvalidOperationException^) {}

现在,当我运行程序并多次单击登录按钮(从而触发“后台工作人员已在运行任务”错误)时,我在该行代码中收到未处理的 System::InvalidOperationException。我这里有什么遗漏吗?

我已经以隐藏登录按钮的方式编写了代码,直到后台工作程序上的代码执行完成,但它不应该捕获异常吗?

科林

【问题讨论】:

  • 如果你这样做catch(System::InvalidOperationException& e) { ...something... }会发生什么?
  • 真正的 bug 是试图吞下异常。

标签: .net winforms exception c++-cli unhandled


【解决方案1】:

您是否将调试器设置为中断所有异常?如果将 RunWorkerAsync 行替换为 throw gcnew InvalidOperationException();,然后单击一次按钮会怎样?

【讨论】:

  • 我相信我会这样做,这可以解释它。我尝试在其他函数上使用 throw,但它没有检测到抛出异常。
猜你喜欢
  • 1970-01-01
  • 2011-11-19
  • 1970-01-01
  • 2013-12-06
  • 1970-01-01
  • 1970-01-01
  • 2011-01-16
相关资源
最近更新 更多