首页 > 编程 > C# > 正文

C#实现强制关闭当前程序进程

2020-01-24 01:47:27
字体:
来源:转载
供稿:网友
 /// <summary>      /// 运行DOS命令      /// DOS关闭进程命令(ntsd -c q -p PID )PID为进程的ID      /// </summary>      /// <param name="command"></param>      /// <returns></returns>      public static string RunCmd(string command)      {        //例一Process,一立程        System.Diagnostics.Process p = new System.Diagnostics.Process();          //Process有一StartInfo性,是ProcessStartInfo,包括了一些性和方法,下面我用到了他的性:          p.StartInfo.FileName = "cmd.exe";      //定程序名        p.StartInfo.Arguments = "/c " + command;  //定程式行        p.StartInfo.UseShellExecute = false;    //Shell的使用        p.StartInfo.RedirectStandardInput = true;  //重定向入        p.StartInfo.RedirectStandardOutput = true; //重定向出        p.StartInfo.RedirectStandardError = true;  //重定向出        p.StartInfo.CreateNoWindow = true;     //置不示窗口          p.Start();  //          //p.StandardInput.WriteLine(command);    //也可以用方式入要行的命令        //p.StandardInput.WriteLine("exit");    //不要得加上Exit要不然下一行程式行的候          return p.StandardOutput.ReadToEnd();    //出流取得命令行果        }  

在Program.cs加上如下

.static class Program    {      /// <summary>      /// 应用程序的主入口点。      /// </summary>      [STAThread]      static void Main()      {        Application.EnableVisualStyles();        Application.SetCompatibleTextRenderingDefault(false);        Application.Run(new MainForm());        //强制关闭进程        string exeName = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;        string[] exeArray = exeName.Split('//');          FunctionClass.RunCmd("taskkill /im " + exeArray[exeArray.Length-1] + " /f ");      }    }  

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表