public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            bbb();
        }
        int j = 0;
        private void bbb()
        {
            try
            {
                int i = 20 / j;
            }
            catch { Application.Exit(); }  //退出程序
        }
    }上面的代码,在构造函数中调用函数bbb(),当出现异常时,为什么没有退出程序呢?
如果要求在构造函数中出现异常,退出程序,该怎么写呢?

解决方案 »

  1.   

    Exit会引发被应用程序打开的所有窗体的FormClosing和FormClosed事件。而且,如果某个窗口的FormClosingEventArgs参数的Cancel属性被设置为true,那么Exit将不会关闭所有窗口和停止所有的消息循环。
    从上面可以知道Application.Exit()并不强制退出应用程序,要想强制退出整个应用程序要用Environment.Exit():终止当前进程并为基础操作系统提供指定的退出代码
      

  2.   

    在构造函数中判断异常,如果异常 ,就不要打开窗口了.
    要么在Form load事件中处理.