如何拷贝整个文件夹

beerboy 2005-12-12 01:50:20
如何拷贝整个文件夹?这个文件夹下面有若干个子文件夹,还有文件,这些子文件夹下面还有文件夹。怎么实现这个文件夹的拷贝?
...全文
358 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
icwin 2005-12-13
  • 打赏
  • 举报
回复
mark
constantine 2005-12-13
  • 打赏
  • 举报
回复
bool MyCopyFiles(AnsiString FromFile,AnsiString ToFile)
{
TSHFileOpStruct Op;
ZeroMemory(&Op, sizeof(SHFILEOPSTRUCT));
Op.hwnd=NULL;
char CopyFile[128];
setmem(CopyFile,128,'\0');
StrPCopy(CopyFile,FromFile);
Op.pFrom=CopyFile;
Op.pTo=ToFile.c_str();
Op.wFunc=FO_COPY;
Op.fFlags=FOF_NOCONFIRMATION;
Op.hNameMappings=NULL;
Op.lpszProgressTitle=NULL;
int result = SHFileOperation(&Op);
return (result == 0) ? true : false;
}
没有见到会把当前目录copy过去的清楚,汗
beerboy 2005-12-13
  • 打赏
  • 举报
回复
另外,老妖的好象需要事先设置好当前路径,否则,将把当前路径下的文件也一块拷贝过去了。
beerboy 2005-12-13
  • 打赏
  • 举报
回复
能不能具体点?shell怎么用?
CACACACACA 2005-12-12
  • 打赏
  • 举报
回复
老妖的方法好,
我这是土偏方.:)
执行SHELL的XCOPY. 加-R.
ccrun.com 2005-12-12
  • 打赏
  • 举报
回复
以下代码将C:\111目录下所有文件拷贝到C:\222中,如果C:\222不存在就提示是否创建。

SHFILEOPSTRUCT op;
String strFrom = "C:\\111\\*.*\0", strTo = "C:\\222\0";
op.hwnd = NULL;
op.wFunc = FO_COPY;
op.pFrom = strFrom.c_str();
op.pTo = strTo.c_str();
op.fFlags = FOF_WANTNUKEWARNING;
::SHFileOperation(&op);

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧