文件夹复制移动问题

feixiangdeyu12 2009-10-13 01:26:17
我想在程序退出时把文件夹A复制移动到文件夹B里去,并改变文件夹名。当程序再次运行再次退出时重复刚才功能(刷新刚才的文件夹)。这应该怎么弄?
...全文
86 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
wlshhgz 2009-10-13
  • 打赏
  • 举报
回复
我以为你上面的是移动文件的,sorry
快乐鹦鹉 2009-10-13
  • 打赏
  • 举报
回复
你不是要移动文件夹么???
wlshhgz 2009-10-13
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 happyparrot 的回复:]
SHFILEOPSTRUCT  sfo; 
          sfo.hwnd  =  NULL; 
          sfo.wFunc  =  FO_MOVE; 
          sfo.pFrom  =  "c:\\My_Docs2\0"; 
          sfo.pTo  =  "d:\\My_Docs2\0"; 
          sfo.fFlags  =  FOF_SILENT  |  FOF_NOCONFIRMATION  |  FOF_NOCONFIRMMKDIR; 
   
          hr  =  SHFileOperation(&sfo); 
 
[/Quote]

我照着写了:
SHFILEOPSTRUCT sfo;
sfo.hwnd = NULL;
sfo.wFunc = FO_MOVE;
sfo.pFrom = "c:\\1.txt"; \\想要移动的文件
sfo.pTo = "d:\\1.txt"; \\把1.txt移动到d盘
sfo.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR;

int hr = SHFileOperation(&sfo);
可是为什么没反应呢?
快乐鹦鹉 2009-10-13
  • 打赏
  • 举报
回复
SHFILEOPSTRUCT sfo;
sfo.hwnd = NULL;
sfo.wFunc = FO_MOVE;
sfo.pFrom = "c:\\My_Docs2\0";
sfo.pTo = "d:\\My_Docs2\0";
sfo.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR;

hr = SHFileOperation(&sfo);
wlshhgz 2009-10-13
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 happyparrot 的回复:]
吐血。
你在程序中获取你的应用程序路径啊。谁让你写一个死的路径呢。
[/Quote]
哦,我知道了,一时没想到
那直接一个文件夹移动可不可以?
fishion 2009-10-13
  • 打赏
  • 举报
回复
不会又想要完全的代码吧=_=!!
快乐鹦鹉 2009-10-13
  • 打赏
  • 举报
回复
吐血。
你在程序中获取你的应用程序路径啊。谁让你写一个死的路径呢。
wlshhgz 2009-10-13
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 happyparrot 的回复:]
要逐个文件移动,不能整个目录移动。而且你这个不是绝对路径。
[/Quote]
不能一个文件夹移动吗?我查了一下说是MoveFile 方法 描述将一个或多个文件从一个地方移动到另一个地方,啊。
我觉得我还是得用相对路径,不然把程序换个地方就用不成了
快乐鹦鹉 2009-10-13
  • 打赏
  • 举报
回复
要逐个文件移动,不能整个目录移动。而且你这个不是绝对路径。
wlshhgz 2009-10-13
  • 打赏
  • 举报
回复
那我这样写有什么问题吗?
int CMyApp::ExitInstance()
{
MoveFile( "./A/","./B/");
return CWinApp::ExitInstance();
}
文件夹A和B最初是放在一个目录下的。怎么不起作用
快乐鹦鹉 2009-10-13
  • 打赏
  • 举报
回复
当然是绝对路径了。
相对路径是不可靠的,路径随时可能被改变。
wlshhgz 2009-10-13
  • 打赏
  • 举报
回复
用MoveFile()的话,要怎么写?MoveFile( "A","B"); ??
字符串里该怎么写。要写清楚绝对地址还是相对地址?
fishion 2009-10-13
  • 打赏
  • 举报
回复
BOOL MoveFile(
LPCTSTR lpExistingFileName,
LPCTSTR lpNewFileName
);
快乐鹦鹉 2009-10-13
  • 打赏
  • 举报
回复
你到底哪一步不会啊?不要问的那么泛泛啊。

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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