zoukankan      html  css  js  c++  java
  • WPF 程序自删除(自毁)|卸载程序删除

    一般是在MainWindow_Closed 事件中调用批处理命令删除。

    在借鉴别人的想法的基础上的算是改进。

    自删除步骤:

    1.删除文件

    2.删除存放文件夹。

    实现代码:

     1 private static void DeleteItselfByCMD()
     2         {
     3             string baseDirectory = System.AppDomain.CurrentDomain.BaseDirectory;
     4             StringBuilder sb = new StringBuilder();
     5             sb.Append(@" /C ping 1.1.1.1 -n 1 -w 1000 > Nul");//ping 一次等1秒 不输出结果
     6             sb.Append(" & DEL "");//删除文件
     7             sb.Append(baseDirectory);
     8             sb.Append("" /f /s /q");
     9             sb.Append(@" & cd..");//删除文件时会占用当前文件句柄?需要退出当前文件夹或者关闭当前文件夹,然后再调用rd删除文件夹。
    10             sb.Append(string.Format("& rd /s /q "{0}"", baseDirectory));
    11             ProcessStartInfo psi = new ProcessStartInfo("cmd.exe", sb.ToString());
    12             psi.WindowStyle = ProcessWindowStyle.Normal;
    13             psi.CreateNoWindow = true;
    14             Process.Start(psi);
    15             Application.Current.Shutdown();
    16         }

    关闭文件夹句柄?这个术语,或者操作方式欠缺。当时思路是如此。

    另:

     //删除有空格的路径,要为路径加上双引号。

  • 相关阅读:
    IOS实现自动循环滚动广告--ScrollView的优化和封装
    iOS开发知识点总结
    iOS项目常用效果方法注意点集锦
    项目功能大全,让你的项目一天搞定
    Xcode调试技巧(断点和重构)
    Swift学习笔记-ARC
    常用的属性修饰
    __ block
    小笔记
    java+tomcat安装
  • 原文地址:https://www.cnblogs.com/aguan/p/5507857.html
Copyright © 2011-2022 走看看