我已将我的工具代码从 Visual Studio 2003 转换为 Visual Studio 2005,并在运行时出现非法跨线程异常,而在另一台具有相同配置的机器上没有错误并且该工具工作正常。
发生这种情况有什么具体原因吗?
谢谢
我已将我的工具代码从 Visual Studio 2003 转换为 Visual Studio 2005,并在运行时出现非法跨线程异常,而在另一台具有相同配置的机器上没有错误并且该工具工作正常。
发生这种情况有什么具体原因吗?
谢谢
您可以通过在表单的加载功能中键入以下命令来解决此问题。
private void Form1_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
}
自 VS 2005 以来有一个新属性,默认Control.CheckForIllegalCrossThreadCalls
设置为true
调试器模式。如果您可以忍受未处理的跨线程调用,则可以通过设置禁用检查:
Control.CheckForIllegalCrossThreadCalls = false;
但是处理异常而不是忽略它们总是一个更好的主意。