请问如何用VC创建一个目录和删除一个目录及齐下所有文件
解决方案 »
- 有人用Win7开发么
- 关于可进行拼写检查和字符替换的C++记事本程序
- 请帮我列一下CListView的所有Style或ExtendedStyle,如LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT等,谢谢
- 关于MM_LOMETRIC的疑问?
- 汉字怎么显示的都是乱码
- 在线等,马上揭帖给分,为什么pFile->QueryInfo(HTTP_QUERY_SET_COOKIE, str) 只返回第一个Set-Cookie: ?
- 一个消息传递的问题
- 小白问:如何设置对话框中控件的Z序?
- 如何显示CReBar的蚀刻线,急!急!急!
- 我遇到了很简单的问题!谢谢高人指点!
- 大型网游有没有可能实现多IP?
- 分割窗口问题
删除一个目录及齐下所有文件
SHFILEOPSTRUCT op;
ZeroMemory(&op, sizeof(op));
op.wFunc = FO_DELETE;
op.pFrom = "c:\\22";
op.fFlags = FOF_SILENT|FOF_NOCONFIRMATION|FOF_ALLOWUNDO;
SHFileOperation(&op);
{
CFileFind tempFind;
char tempFileFind[MAX_PATH];
sprintf(tempFileFind,"%s\\*.*",DirName);
BOOL IsFinded=(BOOL)tempFind.FindFile(tempFileFind);
while(IsFinded)
{
IsFinded=(BOOL)tempFind.FindNextFile();
if(!tempFind.IsDots())
{
char foundFileName[MAX_PATH];
strcpy(foundFileName,tempFind.GetFileName().GetBuffer(MAX_PATH));
if(tempFind.IsDirectory())
{
char tempDir[MAX_PATH];
sprintf(tempDir,"%s\\%s",DirName,foundFileName);
DeleteDirectory(tempDir);
}
else
{
char tempFileName[MAX_PATH];
sprintf(tempFileName,"%s\\%s",DirName,foundFileName);
DeleteFile(tempFileName);
}
}
}
tempFind.Close();
if(!RemoveDirectory(DirName))
{
MessageBox(0,"删除目录失败!","警告信息",MB_OK);//比如没有找到文件夹,删除失败,可把此句删除
return FALSE;
}
return TRUE;
}
要删除就这样递归遍历这个目录下的所有文件并把它们全部删除。