+ -
当前位置:首页 → 问答吧 → 请教copy整个文件夹怎么做

请教copy整个文件夹怎么做

时间:2011-08-30

来源:互联网

在innosetup里面有什么命令可以实现这个功能。我只看到copy和copyfile 这2个命令只能copy文件,不能copy整个文件夹

作者: cnsong9999   发布时间: 2011-08-30

将c:\abc复制到c:\temp的代码如下:

uses ShellApi;
procedure TForm1.Button3Click(Sender: TObject);
var
  OpStruc: TSHFileOpStruct;
  frombuf, tobuf: Array [0..128] of Char;
Begin
  FillChar( frombuf, Sizeof(frombuf), 0 );
  FillChar( tobuf, Sizeof(tobuf), 0 );
  StrPCopy( frombuf, 'c:\abc\*.*' );
  StrPCopy( tobuf, 'c:\temp' );
  With OpStruc DO Begin
  wFunc:= FO_COPY;
  pFrom:= @frombuf;
  pTo:=@tobuf;
  fFlags:= FOF_NOCONFIRMATION+FOF_NOCONFIRMMKDIR;
  fAnyOperationsAborted:= False;
  hNameMappings:= Nil;
  lpszProgressTitle:= Nil;
  end;
  ShFileOperation( OpStruc );
end;

作者: mwy654321   发布时间: 2011-08-30

如1楼,TSHFileOpStruct最适合你

作者: bdmh   发布时间: 2011-08-30

确实没找到
可以试试
function FindFirst(const FileName: String; var FindRec: TFindRec): Boolean; 
function FindNext(var FindRec: TFindRec): Boolean; 
procedure FindClose(var FindRec: TFindRec); 
查找文件然后一个个的复制过去,如果遇到文件夹就递归调用。

作者: m617105   发布时间: 2011-08-30

楼上的老哥几位,楼长问的是在inno中,不是在delphi里

作者: sonicer   发布时间: 2011-08-30

Source: "Files\*"

作者: lhylhy   发布时间: 2011-08-30

引用 4 楼 sonicer 的回复:
楼上的老哥几位,楼长问的是在inno中,不是在delphi里

。。。。。。
我说的就是Inno Setup。

作者: m617105   发布时间: 2011-08-30

怎么加积分哇

作者: jitonglin   发布时间: 2011-08-30

热门下载

更多