zoukankan      html  css  js  c++  java
  • winform总结5> winform程序开发注意事项

    1.全局异常捕获

    Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
    //处理UI线程异常   
    Application.ThreadException += Application_ThreadException;
    //处理非UI线程异常   
    AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
    
    private static void Application_ThreadException(object sender, ThreadExceptionEventArgs e)
      {
                var ex = e.Exception;
                if (ex != null)
                {
                    LogHelper.Log(ex);
                }
    
                MessageBox.Show("系统出现未知异常,请重启系统!");
            }
    
            private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
            {
                var ex = e.ExceptionObject as Exception;
                if (ex != null)
                {
                    LogHelper.Log(ex);
                }
    
                MessageBox.Show("系统出现未知异常,请重启系统!");
            }

    单实例启动:

     var ProcessName = Process.GetCurrentProcess().ProcessName;
     if (!(Process.GetProcessesByName(ProcessName)).GetUpperBound(0) > 0)
     {
           Application.run(new MainForm());
     }
    bool Running;
    using (System.Threading.Mutex mutex = new System.Threading.Mutex(true, Application.ProductName, out Running))
    {
      if (Running)
      {
          Application.Run(new MainForm());
      }
    }

    自动启动

     var reg = Registry.LocalMachine.OpenSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun", true);
    if (reg == null)
    {
        reg = Registry.LocalMachine.CreateSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun");
    }
    reg.SetValue("自动启动程序名称","自动启动程序路径");//在注册表中添加一项就可以做到自动启动

     内存使用量限制:

    x86最大使用量2G[最大4G,系统保留1G,出于商业目的个人用户只可以使用2G],除去代码占用的空间实际的程序运行内存最大只能支持到1.4G-1.5G之间,实际测试的值,再大就会内存溢出。

    x64编译的最大使用内存最大可以理论可以打到16TB,也就是说可以满足大多数的程序设计要求。来源网址:http://www.360doc.com/content/15/0617/16/6075898_478777201.shtml 

    这一点对于有大量的数据操作的情况,非常的重要。

  • 相关阅读:
    26_多线程_第26天(Thread、线程创建、线程池)
    25_IO_第25天(Properties、序列化流、打印流、CommonsIO)
    24_IO_第24天(转换流、缓冲流)
    23_IO_第23天(字节流、字符流)
    22_IO_第22天(File、递归)
    PHP常用函数
    PHP后台基本语法使用笔记
    java笔记
    springmvc常用注解标签详解
    Java:全局变量(成员变量)与局部变量
  • 原文地址:https://www.cnblogs.com/zzfstudy/p/6288258.html
Copyright © 2011-2022 走看看