Ver Mensaje Individual
  #4  
Antiguo 22-09-2014
camiz camiz is offline
Miembro
 
Registrado: ene 2012
Posts: 69
Reputación: 13
camiz Va por buen camino
Hola mcsebas,
Haber si te sirve esto.

Código Delphi [-]
var
   BD : OLEVariant;
   BaseDatos, Clave:string;
Begin
  {Ubicación de la Base de Datos }
  BaseDatos := ExtractFilePath(Application.ExeName) + 'MisDatos.mdb';
  {Contraseña de la base de datos}
  Clave := txtClave.Text;
  { ... }
  try
    DeleteFile(BaseDatos + '2');
    BD := CreateOleObject('Dao.DbEngine.35');
    BD.CompactDataBase(BaseDatos, BaseDatos + '2', NULL, 0, ';pwd=' + Clave);
    DeleteFile(BaseDatos);
    RenameFile(BaseDatos + '2', BaseDatos);
  except
    try
      DeleteFile(BaseDatos + '2');
      BD := CreateOleObject('Dao.DbEngine.36');
      BD.CompactDataBase(BaseDatos, BaseDatos + '2', NULL, 0, ';pwd=' + Clave);
      DeleteFile(BaseDatos);
      RenameFile(BaseDatos + '2', BaseDatos);
    except
      try
        DeleteFile(BaseDatos + '2');
        BD := CreateOleObject('Dao.DbEngine.120');
        BD.CompactDataBase(BaseDatos, BaseDatos + '2', NULL, 0, ';pwd=' + Clave);
        DeleteFile(BaseDatos);
        RenameFile(BaseDatos + '2', BaseDatos);
      finally
     end;
    end
   end;
Responder Con Cita