zoukankan      html  css  js  c++  java
  • C# 强制关闭当前程序进程(完全Kill掉不留痕迹)

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

    在Program.cs加上如下

     1 static class Program    
     2     {    
     3         /// <summary>    
     4         /// 应用程序的主入口点。    
     5         /// </summary>    
     6         [STAThread]    
     7         static void Main()    
     8         {    
     9             Application.EnableVisualStyles();    
    10             Application.SetCompatibleTextRenderingDefault(false);    
    11             Application.Run(new MainForm());    
    12             //强制关闭进程    
    13             string exeName = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;    
    14             string[] exeArray = exeName.Split('\');    
    15     
    16             FunctionClass.RunCmd("taskkill /im " + exeArray[exeArray.Length-1] + " /f ");    
    17         }    
    18     }   
    View Code
  • 相关阅读:
    android Fragment和FragmentActivity
    android 生成xml文件
    android:在ViewPager中使用Button
    android延迟执行
    android.os.NetworkOnMainThreadException 异常
    导入android工程没有R文件的解决办法
    20个常用的Java程序块
    Java中的==、equals、hasCode方法
    《head first java 》读书笔记
    【写给自己】2014-03-13
  • 原文地址:https://www.cnblogs.com/Maculish/p/5067099.html
Copyright © 2011-2022 走看看