自杀程序,删掉自身,包括执行程序所在的文件夹。

仅在windows下进行了测试,使用语言C#

        string fileName = Path.GetTempPath() + "killmyself.bat";
        FileInfo fi = new FileInfo(fileName);
        if(fi.Exists)
            fi.Delete();
        StreamWriter bat = new StreamWriter(fi.OpenWrite());

        bat.WriteLine("cd ..");
        //bat.WriteLine($"del \"{Environment.CurrentDirectory}\" /q");
        bat.WriteLine($"rd \"{Environment.CurrentDirectory}\" /Q /S");  //删除包括执行程序的文件夹
        bat.WriteLine($"del \"{fileName}\" /q");    //删除临时bat文件

        bat.Close();
        ProcessStartInfo info = new ProcessStartInfo(fileName);
        info.WindowStyle = ProcessWindowStyle.Hidden;
        Process.Start(info);
        Environment.Exit(0);

递归删除目录的样例代码

    /// <summary>
    /// 递归删除目录
    /// </summary>
    /// <param name="dir"></param>
    public static void Deletedir(DirectoryInfo dir)
    {
        if (!dir.Exists)
        {
            Console.WriteLine("Directory not exists");
            return;
        }

        foreach (var item in dir.GetDirectories())
        {
            Deletedir(item);
        }
        try
        {
            dir.Delete(true);
            Console.WriteLine("delete   " + dir.FullName);
        }
        catch (Exception)
        {
        }
    }

相关文章:

  • 2022-12-23
  • 2021-09-26
  • 2021-11-30
  • 2022-12-23
  • 2021-07-31
  • 2022-02-06
  • 2021-12-15
  • 2022-12-23
猜你喜欢
  • 2021-10-09
  • 2022-03-01
  • 2022-12-23
  • 2022-12-23
  • 2021-04-20
  • 2021-05-26
  • 2021-10-05
相关资源
相似解决方案