码迷,mamicode.com
首页 > Windows程序 > 详细

windows递归拷贝(或删除等操作)文件

时间:2016-10-18 20:24:13      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:

SHFileOperation

以拷贝为例。

 

CString strFrom = ....._T("src");
CString strTo = ....._T("dest\\");

将strFrom文件夹及其下面的文件和子文件夹拷贝到   strTo下面

if (!PathFileExists(strTo))
{

CreateWindowDirectory(strTo);//创建目标文件夹,否则GetLastrError会得到 ERROR_INVALID_HANDLE错误
//strTo += _T("\\");
//wstring new_sf = source_folder + L"\\*";
WCHAR sf[MAX_PATH + 1];
WCHAR tf[MAX_PATH + 1];

wcscpy_s(sf, MAX_PATH, T2CW(strFrom));
wcscpy_s(tf, MAX_PATH, T2CW(strTo));

sf[lstrlenW(sf) + 1] = 0;
tf[lstrlenW(tf) + 1] = 0;

SHFILEOPSTRUCTW s = { 0 };
s.wFunc = FO_COPY;//拷贝,也可以指定删除等
s.pTo = tf;
s.pFrom = sf;
s.fFlags = FOF_SILENT | FOF_NOCONFIRMMKDIR | FOF_NOCONFIRMATION | FOF_NOERRORUI | FOF_NO_UI;
int res = SHFileOperationW(&s);
}

windows递归拷贝(或删除等操作)文件

标签:

原文地址:http://www.cnblogs.com/criticalsection/p/5974747.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!