// rms_clean.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <stdio.h>
#include <io.h>
#include <string.h>
#include <direct.h>
#include <Windows.h>
#include "Shlwapi.h"
#include "resource.h"
#pragma comment(lib, "shlwapi")
int removeDir(const TCHAR* dirPath)
{
struct _wfinddata_t fb;
TCHAR path[250];
long handle;
int resultone;
int noFile;
noFile = 0;
handle = 0;
//制作路径
wcscpy(path,dirPath);
wcscat (path,L"/*");
handle = _wfindfirst(path,&fb);
if (handle != 0)
{
while (0 == _wfindnext(handle,&fb))
{
noFile = wcscmp(fb.name,L"..");
if (0 != noFile)
{
memset(path,0,sizeof(path));
wcscpy(path,dirPath);
wcscat(path,L"/");
wcscat (path,fb.name);
if (fb.attrib == 16)
{
removeDir(path);
}
else
{
DeleteFile(path);
}
}
}
_findclose(handle);
}
resultone = RemoveDirectory(dirPath);
return resultone;
}
int _tmain(int argc, _TCHAR* argv[])
{
HICON hIcon = LoadIcon(GetModuleHandle(NULL), MAKEINTRESOURCE(IDI_ICON1));
HWND hwnd = GetConsoleWindow();
SendMessage(hwnd, WM_SETICON, ICON_SMALL, (LPARAM)hIcon);
TCHAR file_path[256] = {0};
wcscpy(file_path,argv[1]);
wcscat(file_path,L"/uninstall.bat");
while (PathFileExists(file_path))
{
Sleep(1000);
}
removeDir(argv[1]);
return 0;
}
C++ 删除文件(夹) 宽字符版 && 设置console程序图标
最新推荐文章于 2022-02-23 07:47:19 发布