使用Process.Kill()杀进程,一些由System用户启动的进程可能会报出“拒绝访问”的错误。
经查,可以使用以下命令杀掉进程。
System.Diagnostics.Process[] arrPro = System.Diagnostics.Process.GetProcessesByName("winword"); //进程名称 if (arrPro.Length > 0) { System.Diagnostics.Process p = new System.Diagnostics.Process(); if (Convert.ToInt32((System.Environment.OSVersion.Version.ToString().Substring(0, 1))) >= 6) { //win7系统下没有ntsd命令,使用tskill p.StartInfo.FileName = "tskill"; //使用ntsd命令 p.StartInfo.Arguments = arrPro[0].Id.ToString(); //服务进程的ID } else { p.StartInfo.FileName = "ntsd"; //使用ntsd命令 p.StartInfo.Arguments = " -c q -p " + arrPro[0].Id.ToString(); //服务进程的ID } p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden; p.Start(); p.WaitForExit(); p.Close(); }
原文:http://blog.csdn.net/ggw128/article/details/7185440