Puedes interceptar el mensage WM_DEVICECHANGE que se produce cuando se inserta un disco. Entonces comprobamos que unidades son "removibles" y hacemos lo que queramos, en tu caso actualizar los archivos.
Algo como esto:
Código Delphi
[-]
type
TForm1 = class(TForm)
private
procedure WMDEVICECHANGE(var Msg: TMessage); message WM_DEVICECHANGE;
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
const
DBT_DEVICEARRIVAL = $8000;
procedure TForm1.WMDEVICECHANGE(var Msg: TMessage);
var
Letra: Char;
begin
if Msg.WParam = DBT_DEVICEARRIVAL then
begin
for Letra:= 'C' to 'Z' do
if GetDriveType(Pchar(Letra+':\')) = DRIVE_REMOVABLE then
begin
ShowMessage('Este es un disco removible '+Letra+':\');
end;
end;
inherited;
end;