Ver Mensaje Individual
  #4  
Antiguo 12-07-2005
Perio Perio is offline
Miembro
 
Registrado: abr 2005
Ubicación: Argentina
Posts: 71
Reputación: 20
Perio Va por buen camino
Thumbs up

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
Responder Con Cita