【发布时间】:2011-07-18 14:14:48
【问题描述】:
Program.cs 中的代码
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
try
{
Application.Run(new Form1());
}
catch (Exception ex)
{
MessageBox.Show("Blah...");
}
}
在 Form1 中,我有一个代码为 throw new Exception(""); 的按钮。
如果我从 Visual Studio 运行应用程序,则会弹出我的消息框(带有消息“Blah...”)。但是如果我从可执行文件运行应用程序,那么 catch 块根本不会执行。
为什么不一样?
我正在使用 Visual Studio 2010、.NET 4.0、Windows XP。
【问题讨论】:
-
在VS外运行会发生什么?如果按 Ctrl+F5 会发生什么? (无需调试即可运行)
-
简短,不完整的答案:调试时发生的事情不同。请参阅此问题了解您应该做什么:stackoverflow.com/questions/1601372/…