2

我有一个方法,我希望在 UI 消息泵上执行,因此执行以下操作:

private void SomeMethod() {
    BeginInvoke(new MethodInvoker(MethodToInvoke));
}

private void MethodToInvoke() {
    // This method contains code that I wish to execute on UI message pump.

}

现在,当我创建项目的调试版本时,上面的工作就很好了。但是,当我创建发布版本时,不会调用“MethodToInvoke”方法。

有谁知道为什么会这样?

谢谢, 艾伦

4

1 回答 1

1

事实证明,对 BeginInvoke 的调用引发了我错过的异常。这当然解释了为什么没有执行目标方法。

System.InvalidOperationException:在创建窗口句柄之前,无法对控件调用 Invoke 或 BeginInvoke。

但是,尚不清楚为什么在 Debug 构建中未引发此异常。

于 2010-06-08T21:16:20.863 回答