如果使用RemoveDirectory(),则只能删除里面内容为空的文件夹。下面的方法可以直接删除一个文件夹以及它里面包含的所有内容。非常好用。
char buf[MAX_PATH];
SHFILEOPSTRUCT fo;
memset(buf, 0, sizeof(buf));
memset(&fo, 0, sizeof(fo));
strcpy(buf,strTempPath.GetString()); //Cfile为文件夹目录
fo.wFunc=FO_DELETE ;
fo.pFrom=buf;
fo.pTo=NULL;
fo.fFlags= FOF_NOCONFIRMATION | FOF_SILENT | FOF_ALLOWUNDO;
SHFileOperation(&fo);
char buf[MAX_PATH];
SHFILEOPSTRUCT fo;
memset(buf, 0, sizeof(buf));
memset(&fo, 0, sizeof(fo));
strcpy(buf,strTempPath.GetString()); //Cfile为文件夹目录
fo.wFunc=FO_DELETE ;
fo.pFrom=buf;
fo.pTo=NULL;
fo.fFlags= FOF_NOCONFIRMATION | FOF_SILENT | FOF_ALLOWUNDO;
SHFileOperation(&fo);