【发布时间】:2011-05-17 05:57:14
【问题描述】:
有两个DLL,A和B,在A.DLL中有一个这样的表单类:
namespace AAA
public class AForm: Form
{
...
private void btnOK_Click(object sender, EventArgs e)
{
DoSomeSth();
}
}
在B.DLL中有这样的代码
try
{
AForm dlg = new AAA.AForm();
dlg.ShowDialog();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
点击OK按钮后DoSomeSth函数会出现异常 使用vs2005调试代码时,异常可以在B.DLL中捕获,但是如果我不调试直接运行应用程序,B.DLL中不会捕获异常,是什么原因?
【问题讨论】:
-
哪里抛出了异常?代码在哪里?问题中没有足够的信息来回答。
-
好问题,我可以重现这个。
-
调试是指附加一个调试器,或者代码是在调试模式下编译,而不是发布?
-
@Theofanis Pantelides:在 VS 调试器中调试,是的。
-
@zespri 调试>异常>全部重置;并再次尝试异常。我们将从那里拿走它。