Guenasss, como andan todos... pude compcatar la puta base de datos y lo hice asiss:
Código:
//Agregar en la uses
uses JRO_TLB;
procedure TForm1.Button2Click(Sender: TObject);
var
JetEngine1 : TJetEngine;
DBName: String;
DataSource, DataDest, DataDestName, Source : String;
begin
DBName := 'C:\Eduardo_Vadalá_(no_borrar)\data_STT.mdb ';
//Si no existe, corta el proceso
if not FileExists(DBName) then
begin
Showmessage('Base de Datos no Encontrada');
Exit;
end;
//Ruta de base de datos temporal
DataDestName := 'C:\WINDOWS\Temp\data_STT.mdb';
//Si existe lo borra
if FileExists(DataDestName) then
begin
DeleteFile(DataDestName);
Showmessage('Archivo no Encontrado');
end;
DataSource :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DBName+';';
DataDest :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataDestName+';';
dataDest := DataDest +'Jet OLEDB:Engine Type=5';
JetEngine1 := TJetEngine.Create(self);
try
JetEngine1.CompactDatabase(DataSource,DataDest);
Showmessage('Base de Datos Compactada en: '+DataDestName);
JetEngine1.Free;
if DeleteFile(DBName) then
begin
if RenameFile(DataDestName,DBName) then
Showmessage(DataDestName+ ' Renombrada a: ' +DBName)
else
Showmessage(DataDestName+ ' no Renombrada' +DBName);
end
else
Showmessage('Error: '+DBName+',no pudo ser borrada');
except
on E: Exception do Showmessage(E.Message);
end;
end;
Gracias de todos modos a todos lo que respondieron