因为程序需要24小时开启,不能关闭。
而我的程序只要过了一个晚上,第二天来看时就自动关闭了。白天运行没有问题。我想写个自动检测该程序运行的Winform,请问如何实现?

解决方案 »

  1.   

    onClosing事件里添加
    {
       Process.Start (“自己”) ;
    }
      

  2.   

    using System;
    using System.Collections.Generic;
    using System.Windows.Forms;
    using System.Threading;
           
            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main()
            {
                bool flag = false;
                string moduleName = "你的程序名称";
                Mutex mutex = new Mutex(true, moduleName, out flag);
                if (flag)
                {
                    MessageBox.Show("程序正在运行!", "提示");
                }
             
            }
      

  3.   

    只要过了一个晚上,第二天来看时就自动关闭
    -----------------------------------------------------------------
    应该找找这个是为什么,也可以写个监控进程,一段时间后自动检测你运行的程序是否存在。用
    Process[] myProcesses;
    myProcesses = Process.GetProcessesByName("进程名");//不带.exe不找出程序自动关闭的原因,就算加其它的程序,也不能保证能正常运行过晚上。
      

  4.   


    Process[] ps=Process.GetProcessesByName("myhelp");
    if(ps.Length==0)
        Process.Start("myhelp.exe");
      

  5.   

    对,用GetProcessesByName方法较好比如:
    System.Diagnostics.Process.GetProcessesByName(System.Diagnostics.Process.GetCurrentProcess().ProcessName);
      

  6.   

    通过Process来进行判断。
    参考的例子。
    http://blog.csdn.net/zhzuo/archive/2006/06/30/857405.aspx
    http://blog.csdn.net/zhzuo/archive/2006/07/04/874745.aspx