SHFileOperation函数静悄悄地删除指定目录

    要删除一个目录,看了RemoveDirectory,只能移除空目录。建议我看SHFileOperation。看看SHFileOperation,果然是个强大的函数。    

    资源管理器中的文件操作(删除、创建、移动、重命名等)都可以用它来实现。在东集的时候就让一个组员在windows ce操作系统下,做了个个性化的explorer,文件操作用的就是这个函数。     

    下面的代码可以悄无声息地把一个文件夹干掉(参数为全路径),不显示提示对话框,不显示错误UI,不显示进度条,直接确认操作。通过设置SHFILEOPSTRUCT的fFlags成员可以达到你想要的效果。

 
bool DeleteDirectorySilent(const TCHAR * szDir)

{

	SHFILEOPSTRUCT fo = 

	{

		NULL,

		FO_DELETE,

		szDir,

		NULL,

		FOF_SILENT | FOF_NOERRORUI | FOF_NOCONFIRMATION,

		FALSE,

		NULL,

		NULL

	};

	return ( 0 ==SHFileOperation(&fo) );

}

你可能感兴趣的:(C++,Win32,mfc)