procedure CopyDirectory(Ori, Desti : string);
var
Files : integer;
FOri, FDesti : string;
ok : boolean;
Search : TSearchRec;
begin
Files := FindFirst(Ori + '\*.*', faAnyFile, Search);
while Files = 0 do
begin
if Search.Attr <> faDirectory then
begin
FOri := Ori + '\' + Search.Name;
FDesti := Desti + '\' + Search.Name;
ok := CopyFile(PChar(FOri),PChar(FDesti),false);
if not ok then ShowMessage('Kopyalandı: '+
Search.Name);
end
else
begin
if (Search.Name <> '.') and (Search.Name <> '..') then
begin
ok := CreateDir(Desti + '\' + Search.Name);
if not ok then ShowMessage('Kopyalanamadı: '+
Search.Name)
else CopyDirectory(Ori+'\'+Search.Name,Desti+'\'+Search.Name);
end;
end;
Files := FindNext(Search);
end;
FindClose(Search);
end;