Copiar arquivos usando o Shell do Windows no Delphi
Inclua na seção uses: ShellApi
{ - Coloque um botão no form e altere o evento OnClick
deste botão conforme abaixo: }
procedure TForm1.Button1Click(Sender: TObject);
var
Dados: TSHFileOpStruct;
begin
FillChar(Dados,SizeOf(Dados), 0);
with Dados do
begin
wFunc := FO_COPY;
pFrom := PChar('c:\teste\*.txt');
pTo := PChar('d:\');
fFlags:= FOF_ALLOWUNDO;
end;
SHFileOperation(Dados);
end;
Esta forma de copiar arquivos oferecem várias vantagens.
- O Shell avisa para pôr um próximo disco quando o atual estiver cheio.
- Mostra a barra de progresso.
- Pode copiar arquivos usando máscara de uma forma extremamente simples.