当我使用取消按钮关闭程序时,我收到一个应用程序错误,它所做的只是关闭表单。
错误说: “应用程序appName.exe遇到严重错误,必须关闭”
如何开始修复它?这不是一个抛出的例外;没有其他信息。 它可能是什么,我该如何解决它?
答案 0 :(得分:7)
这就是它。我的应用程序有两种形式 - 登录和主要表单,其中所有操作都发生。登录表单有两个按钮(登录和取消)。登录按钮将用户登录,关闭登录表单并打开主表单。取消按钮只关闭登录表单。要关闭表单,我只需使用this.Close()。
发生的事情是,我仍然需要通过执行以下操作来明确处理登录表单:
frmLogin.Dispose();
frmLogin = null;
退出程序之前(在我的Program.cs中)
所以这解决了它。我必须确保在两种情况下都完成了这项工作:当用户登录时以及他们选择不登录时。
至关重要的事实是frmLogin是模态的,因此Dispose()在关闭时不会自动调用。
答案 1 :(得分:1)
这通常是由您的进程空间中的托管代码无法捕获的系统级异常引起的。通常情况下,当您P / Invoke到本机代码并为其指定错误的指针/参数时,它会导致CLR未捕获的本机异常。
答案 2 :(得分:0)
在Program.cs中的Application.Run(...)行周围抛出一个try / catch块,如下所示:
try
{
Application.Run(new Form1());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
您看到的消息意味着有一个未被捕获的抛出异常。
答案 3 :(得分:0)
查看一些GUI组件,DLL或端口资源。有些时候是未封闭的端口,有些时候是一些GUI组件(我处理一些List GUI组件)
答案 4 :(得分:0)
我安装了resharper,其缓存正在创建问题。我删除了缓存并且工作正常。