1、在程序中删除当前程序exe文件所在文件夹的相关文件
SetPriorityClass(GetCurrentProcess(), REALTIME_PRIORITY_CLASS);SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);SHChangeNotify(SHCNE_DELETE, SHCNF_PATH, _pgmptr, NULL);char szCommandLine[MAX_PATH] = { 0};sprintf(szCommandLine, "/c ping 127.0.0.1 -n 1 && del /f/q \"%s\"", _pgmptr);ShellExecute(NULL, "open", "cmd.exe", szCommandLine, NULL, SW_HIDE);CFileFind finder;CString strPath="./*.*"; //*.*表示当前文件夹下的所有文件BOOL bWorking=finder.FindFile(strPath);while(bWorking){ bWorking=finder.FindNextFile(); DeleteFile(finder.GetFilePath());}finder.Close();
ExitProcess(0);
2、在本机的C、D、E盘等本地磁盘中查找并删除程序安装文件
CFile psdFile;psdFile.Open("clear.bat",CFile::modeCreate|CFile::modeReadWrite); //程序名(UcpSetup.exe,abc.exe,123.exe)CString strTemp="@echo off\r\nfor %%a in (c d e f g h i j) do (\r\nfor %%i in (UcpSetup.exe) do (\r\ndel /s /f /q /a \"%%a:\\%%i\"\r\n)\r\n)\r\ndel %0";int strLen;strLen=strTemp.GetLength();psdFile.Write(strTemp,strLen);psdFile.Close();ShellExecute(NULL, "open", "clear.bat", NULL, NULL, SW_HIDE);