//////////////////////////////////////////////////////////////////////////
// DelTree
// 删除一个文件夹
// lpszPath - 要删除的文件夹路径
// 返回值:成功返回TRUE,否则返回FALSE
// 备注:亦可用来删除单个文件
//////////////////////////////////////////////////////////////////////////
BOOL DelTree(LPCTSTR lpszPath)
{
SHFILEOPSTRUCT FileOp;
FileOp.fFlags = FOF_NOCONFIRMATION;
FileOp.hNameMappings = NULL;
FileOp.hwnd = NULL;
FileOp.lpszProgressTitle = NULL;
FileOp.pFrom = lpszPath;
FileOp.pTo = NULL;
FileOp.wFunc = FO_Delete;
return SHFileOperation(&FileOp) == 0;
}
api函数说明:
SHFileOperation
函数功能描述:文件操作,与 Shell 的动作相同。
函数原型:
#include<shellapi.h>
WINSHELLAPI int WINAPI SHFileOperation(LPSHFILEOPSTRUCT lpFileOp);
参数:
typedef struct _SHFILEOPSTRUCT
{
HWND hwnd; //父窗口句柄
UINT wFunc; //要执行的动作
LPCTSTR pFrom; //源文件路径,可以是多个文件
LPCTSTR pTo; //目标路径,可以是路径或文件名
FILEOP_FLAGS fFlags; //标志,附加选项
BOOL fAnyOperationsAborted; //是否可被中断
LPVOID hNameMappings; //文件映射名字,可在其它 Shell 函数中使用
LPCTSTR lpszProgressTitle; // 只在 FOF_SIMPLEPROGRESS 时,指定对话框的标题。
} SHFILEOPSTRUCT, FAR *LPSHFILEOPSTRUCT;