winform打开进程与关闭进程

#region 判断某进程名是否运行
        /// <summary>
        /// 关闭指定名称的进程
        /// </summary>
        /// <param name="processname"></param>
        void KillProcess(string processname)
        {
            Process[] allProcess = Process.GetProcesses();
            foreach (Process p in allProcess)
            {
                if (p.ProcessName.ToLower() + ".exe" ==processname.ToLower())
                {
                    for (int i = 0; i < p.Threads.Count; i++)
                        p.Threads[i].Dispose();
                    p.Kill();
                   
                    break;
                }
            }
        
        }
        /// <summary>
        /// 运行应用程序目录下的进程
        /// </summary>
        /// <param name="precessname">进程名称</param>
        void RunProcess(string processname)
        {
            Process[] allProcess = Process.GetProcesses();
            bool isRun = false;
            foreach (Process p in allProcess)
            {
                if (p.ProcessName.ToLower() + ".exe" == processname.ToLower())
                {
                    isRun = true;
                    break;
                }
            }
            if (isRun == false)
            {
                if(File.Exists(Application.StartupPath + "\" + processname))
                Process.Start(Application.StartupPath + "\" + processname);
            }
        }
        #endregion
原文地址:https://www.cnblogs.com/51net/p/4649703.html