日期:2014-05-19  浏览次数:20947 次

急急!!!关闭程序错误问题!!!!!!!!
我用的是vs2005。我现在点击窗体1的按钮,弹出窗体2,窗体2主要是显示和更新数据库中的数据。现在运行时没有任何问题,功能正常,就是在关闭后在下面这段程序中有个错误提示:
protected   override   void   Dispose(bool   disposing)
                {
                        if   (disposing   &&   (components   !=   null))
                        {
                                components.Dispose();
                        }
                        base.Dispose(disposing);///错误指向这一行。
                }
错误为:未处理accessviolationException       尝试读取或写入受保护的内存。这通常指示其他内存已损坏。


没调用窗口2时好像没有这个错误,是不是我在访问数据库的时候一些资源没有释放呢,请高手指点!!!!!

------解决方案--------------------
accessviolationException是一个catch无法捕捉的错误。
你把代码多改改,确定程序运行到哪出这个错误。
------解决方案--------------------

protected override void Dispose(bool disposing)
{
base.Dispose(disposing);///错误指向这一行。
if (disposing && (components != null))
{
components.Dispose();
}
}
------解决方案--------------------
用Close()
不然你怎么关闭
------解决方案--------------------
是不是Form2调用了Form1的资源?