Se supone que el mismo programa que compacta la base de datos, hace uso de las tablas, así que podemos intentar abrir la tabla primero:
Código Delphi
[-]
try
table1.Close ; table1.exclusive := true;
try
table1.Open;
except:
on E: TDBEngineError do
begin
10253 : $280D : Table cannot be opened for exclusive use.
if TDBEngineError(E).Errors[0].Errorcode = 10253 then
ShowMessage('Quillo cierra la tabla');
end;
finally
table1.Close;
end;
¿Es viable?