我用c#写winform程序
我现在想让程序只有一个实例在内存中运行
代码应该怎么写啊?

解决方案 »

  1.   

    class Singleton    {        private static Singleton _instance;                private Singleton(){}         public static Singleton f_Instance        {            get            {                if(_instance == null)                {                    _instance = new Singleton();                }                return _instance;            }        }    }
      

  2.   

    public static bool IsExistRun
    {
      //UBound 返回数组的指示维度的最大可用下标
      if(UBound(Diagnostics.Process.GetProcessesByName(Diagnostics.Process.GetCurrentProcess.ProcessName)) > 0)
      {
        //本程序已运行
        return true;
      {
       
      return false;
    }public static void Main()
    {
      if(IsExistRun() == true) return;  Application.Run(...)
    }