VC程序快速删除自己(可能做升级程序的时候有用)

Posted 朝闻道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VC程序快速删除自己(可能做升级程序的时候有用)相关的知识,希望对你有一定的参考价值。

项目一般都会带有卸载程序,如果这个程序是自己来做的话,在调用完卸载程序后需要删除自己的所有文件,在Google了好久终于找到一些相关信息,一般只能删除一个文件,经过自己的处理,可以删除文件夹下面所有内容,也可包含子文件夹。

主要原理是,在退出程序时,执行一条Dos命令来删除,如下:

    CString strParam;

    strParam = "/C choice /C Y /N /D Y /T 3 & rd /s /q \"";
    strParam += “d:\\test”;
    strParam += "\"";
    ShellExecute(NULL, L"open", L"cmd.exe", strParam, NULL, SW_HIDE);

    choice /C Y /N /D Y /T 3 & rd /s /q \ 这条命令,代表3秒以后执行rd命令来删除文件夹,由于在XP上面会提示choice不是内部命令,可能在不同的电脑上会不成功。(在我的电脑上面是可以的。),保险起见,使用下面代码是可以的,如下:

 

    CString strParam;

    strParam = "/C ping 1.1.1.1 -n 1 -w 3000 > Nul & rd /s /q \"";
    strParam += “d:\\test”;
    strParam += "\"";
    ShellExecute(NULL, L"open", L"cmd.exe", strParam, NULL, SW_HIDE);

http://blog.csdn.net/itjobtxq/article/details/8968745

以上是关于VC程序快速删除自己(可能做升级程序的时候有用)的主要内容,如果未能解决你的问题,请参考以下文章

win10安装VC6.0到最后出现“安装程序正在更新您的系统”,然后就不动了,怎么办

如何将 VC++6.0 项目升级到 VS2010?

vc ++获取程序执行时间时间

转载VC中如何调用其他的可执行程序

如何用VC编写一个程序,运行打开指定网页

用VC++ 6.0编写的程序怎么把它放到一个文件夹里,然后想用的时候用呢?