C# 利用CMD命令行结束进程

        public static void CmdKillProcess(int pid)
        {
            string cmdStr = string.Format("taskkill /pid  {0} /f &exit", pid);
            using (Process process = new Process())
            {
                process.StartInfo.FileName = "cmd.exe";
                process.StartInfo.UseShellExecute = false;
                process.StartInfo.RedirectStandardInput = true;
                process.StartInfo.RedirectStandardOutput = true;
                process.StartInfo.RedirectStandardError = true;
                process.StartInfo.CreateNoWindow = true;
                process.Start();
                process.StandardInput.WriteLine(cmdStr);
                process.StandardInput.AutoFlush = true;
            }
        }

        /// <summary>
        /// 结束指定名称进程
        /// </summary>
        /// <param name="processName"></param>
        public static bool KillProcess(string processName)
        {
            try
            {
                Process[] proc = Process.GetProcessesByName(processName);
                foreach (var p in proc)
                {
                    if (p.ProcessName == processName)
                    {
                        CmdKillProcess(p.Id);
                    }
                }
                return true;
            }
            catch
            {
                return false;
            }
        }

原文地址:https://www.cnblogs.com/kzwrcom/p/6368941.html