• UnhandledException


    static class Program
        {
            
    /// <summary>
            
    /// The main entry point for the application.
            
    /// </summary>
            [STAThread]
            
    static void Main()
            {
                
    //异常捕捉
                Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
                Application.ThreadException 
    += new ThreadExceptionEventHandler(UIThreadException);
                AppDomain.CurrentDomain.UnhandledException 
    += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
                
                
    //正常程序运行处
                Application.EnableVisualStyles();  Application.SetCompatibleTextRenderingDefault(false);  Application.Run(new AutoJudge());
            }
            
    /// <summary>
            
    /// 线程异常捕捉
            
    /// </summary>
            
    /// <param name="sender"></param>
            
    /// <param name="t"></param>
            private static void UIThreadException(object sender, ThreadExceptionEventArgs t)
            {
                
    try
                {
                    
    string errorMsg = "Windows窗体线程异常:";
                    MessageBox.Show(errorMsg 
    + t.Exception.Message + Environment.NewLine + t.Exception.StackTrace);
                }
                
    catch
                {
                    MessageBox.Show(
    "不可恢复的Windows窗体异常,应用程序将退出!");
                }
            }
            
    /// <summary>
            
    /// 非线程异常捕捉
            
    /// </summary>
            
    /// <param name="sender"></param>
            
    /// <param name="e"></param>
            private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
            {
                
    try
                {
                    Exception ex 
    = (Exception)e.ExceptionObject;
                    
    string errorMsg = "非Windows窗体线程异常:";
                    MessageBox.Show(errorMsg 
    + ex.Message + Environment.NewLine + ex.StackTrace);
                }
                
    catch
                {
                    MessageBox.Show(
    "不可恢复的非Windows窗体线程异常,应用程序将退出!");
                }
            }
        }
  • 相关阅读:
    ArchLinux安装
    数据库优化空间换时间优化
    SQL server 系统优化通过执行计划优化索引(2)
    SQL 语句技巧递归查询机构和下属机构的用户数
    SQL语句技巧复杂逻辑的SQL简单实现(2)
    用最少的成本获得最大收益――论DBA在企业可持续发展中的价值
    sql server性能分析定时收集系统运行情况
    SQL server 数据库自动备份
    Sql Server 2005 实现Oracle 10g的rangelist/range等组合分区功能
    关于Oracle学习以及DBA工作机会(转)
  • 原文地址:https://www.cnblogs.com/zhangpengshou/p/1982287.html
Copyright © 2020-2023  润新知