发信人: kingron( ) 
整理人: soaringbird(2001-11-17 19:14:56), 站内信件
 | 
 
 
是在不行,可以使用ShFileOperation() API进行操作!
 Delphi中提供了相应的函数,再仔细看看你的代码和帮助?
 删除目录:
 
 function DelDirectory(const Source:string): boolean;
 var
   fo: TSHFILEOPSTRUCT;
 begin
   FillChar(fo, SizeOf(fo), 0);
   with fo do
   begin
     Wnd := 0;
     wFunc := FO_DELETE;
     pFrom := PChar(source+#0);
     pTo := #0#0;
     fFlags := FOF_NOCONFIRMATION+FOF_SILENT;
   end;
   Result := (SHFileOperation(fo) = 0);
 end;
 复制目录:
 function CopyDirectory(const Source, Dest: string): boolean;
 var
   fo: TSHFILEOPSTRUCT;
 begin
   FillChar(fo, SizeOf(fo), 0);
   with fo do
   begin
     Wnd := 0;
     wFunc := FO_COPY;
     pFrom := PChar(source+#0);
     pTo := PChar(Dest+#0);
     fFlags := FOF_NOCONFIRMATION+FOF_NOCONFIRMMKDIR    ;
   end;
   Result := (SHFileOperation(fo) = 0);
 end;
 
 重新命名:
 用MoveFile()或者下面的函数也可以。
 RenameFile('c:\a','c:\b')好想也可以?Win2K。
 //RenDirectory('d:\wt2','d:\bcde');
 function RenDirectory(const OldName,NewName:string): boolean;
 var
   fo: TSHFILEOPSTRUCT;
 begin
   FillChar(fo, SizeOf(fo), 0);
   with fo do
   begin
     Wnd := 0;
     wFunc := FO_RENAME;
     pFrom := PChar(OldName+#0);
     pTo := pchar(NewName+#0);
     fFlags := FOF_NOCONFIRMATION+FOF_SILENT;
   end;
   Result := (SHFileOperation(fo) = 0);
 end;
 //Copy 多个文件的处理:
 function CopyFiles(const Source,Dest: string): boolean;
 var
   fo: TSHFILEOPSTRUCT;
 begin
   FillChar(fo, SizeOf(fo), 0);
   with fo do
   begin
     Wnd := 0;
     wFunc := FO_COPY;
     pFrom := @source[1];
     pTo :=pchar(dest);
     fFlags := FOF_NOCONFIRMATION+FOF_NOCONFIRMMKDIR    ;
   end;
   Result := (SHFileOperation(fo) = 0);
 end;
 
 procedure TForm1.Button1Click(Sender: TObject);
 var
   str:string;
   i:integer;
 begin
   if opendialog1.Execute then
   begin
     for i:=0 to OpenDialog1.Files.Count-1 do
      str:=str+OpenDialog1.Files.strings[i]+#0;
     showmessage(str);
     str:=str+#0;
     CopyFiles(str,'d:\temp');
   end;
 end;
 【 在 liuzhongyuan1 的大作中提到:】
 :各位大虾:
 :    小弟想通过编程将一个文件夹进行重新命名。我用Rename和RenameFile都试过了,但都不行。不知其因,特来讨教。另请问在Delphi 5中怎样对文件夹对象进行操作,即包括对文件夹的创建、删除、重命名以及相关操作。谢谢!
 :......
  
 
  ---- ██████   没有你,赢了世界又如何?
 █┏━━┓█       没有最好,只有更好
 █┃之金┃█   广州社区Delphi版直达快车
 █┃印龍┃█       技术问题请勿寄到信箱,此类信件将被忽略
 █┗━━┛█   Good Good Study,Day Day Up
 ██████       一场幽梦同谁近,千古情人我独痴    | 
 
 
 |