大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > C#技巧 > C# 强制关闭当前程序进程(完全Kill掉不留痕迹)

C# 强制关闭当前程序进程(完全Kill掉不留痕迹)

关键词:强制关闭当前程序进程C#  阅读(1056) 赞(13)

[摘要]本文是对C# 强制关闭当前程序进程(完全Kill掉不留痕迹)的讲解,对学习C#编程技术有所帮助,与大家分享。

C# 强制关闭当前程序进程(完全Kill掉不留痕迹)

C#代码
  1. ///<summary>
  2. ///运行DOS命令
  3. ///DOS关闭进程命令(ntsd-cq-pPID)PID为进程的ID
  4. ///</summary>
  5. ///<paramname="command"></param>
  6. ///<returns></returns>
  7. publicstaticstringRunCmd(stringcommand)
  8. {
  9. //實例一個Process類,啟動一個獨立進程
  10. System.Diagnostics.Processp=newSystem.Diagnostics.Process();
  11. //Process類有一個StartInfo屬性,這個是ProcessStartInfo類,包括了一些屬性和方法,下面我們用到了他的幾個屬性:
  12. p.StartInfo.FileName="cmd.exe";//設定程序名
  13. p.StartInfo.Arguments="/c"+command;//設定程式執行參數
  14. p.StartInfo.UseShellExecute=false;//關閉Shell的使用
  15. p.StartInfo.RedirectStandardInput=true;//重定向標準輸入
  16. p.StartInfo.RedirectStandardOutput=true;//重定向標準輸出
  17. p.StartInfo.RedirectStandardError=true;//重定向錯誤輸出
  18. p.StartInfo.CreateNoWindow=true;//設置不顯示窗口
  19. p.Start();//啟動
  20. //p.StandardInput.WriteLine(command);//也可以用這種方式輸入要執行的命令
  21. //p.StandardInput.WriteLine("exit");//不過要記得加上Exit要不然下一行程式執行的時候會當機
  22. returnp.StandardOutput.ReadToEnd();//從輸出流取得命令執行結果
  23. }

在Program.cs加上如下

C#代码
  1. staticclassProgram
  2. {
  3. ///<summary>
  4. ///应用程序的主入口点。
  5. ///</summary>
  6. [STAThread]
  7. staticvoidMain()
  8. {
  9. Application.EnableVisualStyles();
  10. Application.SetCompatibleTextRenderingDefault(false);
  11. Application.Run(newMainForm());
  12. //强制关闭进程
  13. stringexeName=System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
  14. string[]exeArray=exeName.Split('\\');
  15. FunctionClass.RunCmd("taskkill/im"+exeArray[exeArray.Length-1]+"/f");
  16. }
  17. }


相关评论