function KopiereFLR(quelle, ziel: string): integer;
var
sfo: tshfileopstruct;
begin
zeromemory(@sfo, sizeof(sfo));
quelle := quelle + #0#0;
ziel := ziel + #0#0;
with sfo do begin
wnd := application.handle;
wfunc := fo_copy;
fflags := FOF_ALLOWUNDO;
pfrom := @quelle[1];
pto := @ziel[1];
end;
result := shfileoperation(sfo);
end;
// Beispielaufruf
procedure TForm1.Button2Click(Sender: TObject);
begin
if kopiereflr('C:\Programme\Internet Explorer', 'D:\') <> 0
then showmessage('Kopieren nicht vollständig');
end;