MFC CopyDirectory

void myCopyDirectory(CString source, CString target)
{
if (!DirectoryExists(target))
{
CreateDirectory(target, NULL); //创建目标文件夹
}

CFileFind finder;
CString path;
path.Format("%s/*.*", source);
bool bWorking = finder.FindFile(path);
while (bWorking){
bWorking = finder.FindNextFile();
if (finder.IsDirectory() && !finder.IsDots()){ //是文件夹 而且 名称不含 . 或 ..
myCopyDirectory(finder.GetFilePath(), target + "/" + finder.GetFileName()); //递归创建文件夹+"/"+finder.GetFileName()
}
else{ //是文件 则直接复制
CopyFile(finder.GetFilePath(), target + "/" + finder.GetFileName(), FALSE);
}
}
}

原文地址:https://www.cnblogs.com/waterair/p/7261798.html