下面的东东不知道对你有没有帮助:<br>1、拷贝目录 <br><br>为了能拷贝目录下带有子目录的情况,先定义一个辅助的拷贝函数,它是递归执行的,直到把目录下的所有文件和子目录都拷贝完。 <br><br>1.1拷贝目录的递归辅助函数:DoCopyDir <br><br>function DoCopyDir(sDirName:String;<br>sToDirName:String):Boolean;<br>var<br> hFindFile:Cardinal;<br> t,tfile:String;<br> sCurDir:String[255];<br> FindFileData:WIN32_FIND_DATA;<br>begin<br> //先保存当前目录<br> sCurDir:=GetCurrentDir;<br> ChDir(sDirName);<br> hFindFile:=FindFirstFile('*.*',FindFileData);<br> if hFindFile< >INVALID_HANDLE_VALUE then<br> begin<br> if not DirectoryExists(sToDirName) then<br> ForceDirectories(sToDirName);<br> repeat<br> tfile:=FindFileData.cFileName;<br> if (tfile='.') or (tfile='..') then<br> Continue;<br> if FindFileData.dwFileAttributes=<br> FILE_ATTRIBUTE_DIRECTORY then<br> begin<br> t:=sToDirName+'/'+tfile;<br> if not DirectoryExists(t) then<br> ForceDirectories(t);<br> if sDirName[Length(sDirName)]< >'/' then<br> DoCopyDir(sDirName+'/'+tfile,t)<br> else<br> DoCopyDir(sDirName+tfile,sToDirName+tfile);<br> end<br> else<br> begin<br> t:=sToDirName+'/'+tFile;<br> CopyFile(PChar(tfile),PChar(t),True);<br> end;<br> until FindNextFile(hFindFile,FindFileData)=false;<br> FindClose(hFindFile);<br> end<br> else<br> begin<br> ChDir(sCurDir);<br> result:=false;<br> exit;<br> end;<br> //回到原来的目录下<br> ChDir(sCurDir);<br> result:=true;<br>end;<br>1.2拷贝目录的函数:CopyDir <br><br>function CopyDir(sDirName:String;<br>sToDirName:string):Boolean;<br>begin<br> if Length(sDirName)< =0 then<br> exit;<br> //拷贝...<br> Result:=DoCopyDir(sDirName,sToDirName);<br>end;<br>