07-控制台程序实现关闭进程

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Diagnostics;

namespace KillProcess
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入进程名:");
            string processName = Console.ReadLine();
            int killValue = 0;
            killValue = KillProc(processName);
            //CloseProcess.KillProc(processName, ref killValue);
            switch (killValue)
            {
                case 0:
                    Console.WriteLine("进程 {0} 关闭成功", processName);
                    break;
                case 1:
                    Console.WriteLine("当前没有正在运行的进程!");
                    break;
                case 2:
                    Console.WriteLine("结束进程 {0} 出错!", processName);
                    break;
                default:
                    break;
            }
            Console.ReadKey();
        }

        /// <summary>
        /// 关闭指定进程的方法
        /// </summary>
        /// <param name="processName">进程名</param>
        /// <returns></returns>
        private static int KillProc(string processName)
        {
            int killValue = 0;
            try
            {
                Process[] ps = Process.GetProcesses();
                if (ps == null)
                {
                    killValue = 1;
                    return killValue;
                }
                foreach (Process item in ps)
                {
                    if (item.ProcessName.ToLower()==processName.ToLower())
                    {
                        item.Kill();
                    }
                }
            }
            catch //出现异常,表明 kill 进程失败
            {
                killValue = 2;
            }

            return killValue;
        }
    }
}

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。