[Lazarus-es] firebird: respaldar desde el programa
Hector S. Ponce
hectorsponce en gmail.com
Jue Nov 11 01:07:19 CET 2010
Paola, experimente rapidito con tu codigo y funciona bien. Ahora yo no
uso el path de la base sino el alias.
procedure TDataModule1.BackupDB;
var
BKPFolder, sNombre, sLog, sBack, sPara: string;
p: TProcess;
begin
BKPFolder := ExtractFileDir(Application.ExeName) + '\bkp\';
if not DirectoryExists(BKPFolder) then
MkDir(BKPFolder);
sNombre := 'bkp_' + IBConnection1.DatabaseName + '_' +
FormatDateTime('yyyyMMDD_HHmmss', Now) + '.fbk';
sLog := 'Log_' + IBConnection1.DatabaseName + '_' +
FormatDateTime('yyyyMMDD_HHmmss', Now) + '.log';
sBack := ExtractFilePath(Application.ExeName) + 'gbak.exe';
sPara := ' -v -t -user ' + IBConnection1.UserName + ' -password ' +
IBConnection1.Password + ' -y ' + BKPFolder + sLog +
' ' + IBConnection1.DatabaseName + ' ' + BKPFolder + sNombre;
if not FileExists(sBack) then
MessageDlg('Aviso', 'Falta ejecutable de backup', mtWarning, [mbOK], 0)
else
begin
p := Tprocess.Create(nil);
p.Options := [poWaitOnExit, poNoConsole];
p.CommandLine := sBack + sPara;
p.Execute;
p.Free;
if FileExists(BKPFolder + sNombre) then
MessageDlg('Aviso', 'Respaldo realizado', mtWarning, [mbOK], 0)
else
MessageDlg('Aviso', 'No se pudo realizar el respaldo', mtWarning,
[mbOK], 0);
end;
end;
El 10/11/2010 12:50 p.m., Paola Bruccoleri escribió:
> El 09/11/2010 10:26 a.m., Paola Bruccoleri escribió:
>> Hola a todos..
>>
>> Tengo implementado esto:
>>
>> sNombre:= 'Datos_'+FormatDateTime('ddmmyyyy', Date)+ '.fbk';
>> sLog:= 'Log_'+ FormatDateTime('ddmmyyyy', Date)+ '.log';
>> sBack:= ExtractFilePath(Application.ExeName)+'gbak.exe';
>> sPara:= '-v -t -user SYSDBA -password masterkey -y
>> '+Principal.cPathDB+sLog+ ' '+ Principal.cPathDB + Principal.cFileDB
>> + ' '+ sDestino + sNombre;
> ok.. esto funcionaba bien mientras el nombre que le ponía al path era
> de esta forma: d:\carpeta\; ahora.. si hacía esto:
> 192.168.1.2:d:\carpeta no funcionaba correctamente el gbak por la ruta
> del archivo.
> Ahora ya separé el hostname de la cadena del path a la base de datos y
> listo!
> muchas gracias igual..
> chauuuuuuuuuu
>
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
More information about the Lazarus-es
mailing list