Estou usando este codigo pra copiar arquivos de um lugar para o outro, mas como faço para copiar a pasta inteira em vez de arquivos?
| CODE |
var SR: TSearchRec; I: integer; Origem, Destino: string; begin I := FindFirst('c:\teste.txt', faAnyFile, SR); while I = 0 do begin if (SR.Attr and faDirectory) <> faDirectory then begin Origem := 'c:\' + SR.Name; Destino := 'd:\' + SR.Name; if not CopyFile(PChar(Origem), PChar(Destino), false) then ShowMessage('Erro ao copiar ' + Origem + ' para ' + Destino); end; I := FindNext(SR); end; end; |
| CODE |
| uses ShellApi; var SH:SHFILEOPSTRUCT; begin FillChar(SH, SizeOf(SH), 0); SH.Wnd := Handle; SH.wFunc := FO_Copy; SH.pFrom := 'Caminho da pasta origem' + #0; SH.pTo := 'Caminho da pasta destino' + #0; SHFileOperation(SH); end; |