C# winform 项目,关闭Form窗体时报错
在C# winform 项目中,在关闭form窗体时导致报错,
提示:试图释放正在使用的 RCW。活动线程或其他线程上正在使用该 RCW。释放正在使用的 RCW 的尝试会导致损坏或数据丢失。
请帮忙看看代码这么修改下,谢谢!
代码如下:
bool exitThread = false; //线程退出标记
private void FrmAnalysis_Load(object sender, EventArgs e)
{
timer = new System.Threading.Timer(MyTimerCallback, null, 0, 1000);
}
void MyTimerCallback(object o)
{
try
{
//防止在窗口句柄初始化之前就走到下面的代码
if (this.IsHandleCreated == true)
{
TheadPackage();
}
}
catch
{
}
}
void TheadPackage()
{
if (!exitThread)
{
System.Threading.Thread thread = new System.Threading.Thread(
new System.Threading.ThreadStart(doWork));
thread.Start();
}
}
void doWork()
{
try
{
if (!exitThread)
{
System.Threading.Thread.Sleep(500);
if (webBrowser1 != null)
{
webBrowser1.Navigate(reporturl);
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void FrmAnalysis_FormClosing(object sender, FormClosingEventArgs e)
{
exitThread = true;
System.Threading.Thread.Sleep(500);
frmmess.Close();
}
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing); //代码走到这边报上面的错误