Para que cuando se hace la copia de seguridad con un TIBBackupService no parezca que el equipo se ha quedado muerto me he montado un formulario con un TMemo en el que se va volcando por donde va el proceso de copia. Eso lo hago así:
Código:
Backup->LoginPrompt = false;
Backup->Params->Add("user_name=sysdba");
Backup->Params->Add("password=masterkey");
Backup->DatabaseName = fPersona->Afiliados->DatabaseName;
Backup->BackupFile->Add(cAux = cDirectorio + "\\" + Now().FormatString("yyyymmddhhnnss") + ".gbk");
Backup->Active = true;
Backup->ServiceStart();
while (Backup->IsServiceRunning)
Memo1->Lines->Add(Backup->GetNextLine());
El resultado es este:

Había pensado que para usar el TIBRestoreService valdría una proceso similar:
Código:
Restore->LoginPrompt = false;
Restore->Params->Add("user_name=sysdba");
Restore->Params->Add("password=masterkey");
Restore->DatabaseName->Add(fPersona->Afiliados->DatabaseName);
Restore->BackupFile->Add(pItem->SubItems->Strings[2]);
Restore->Active = true;
Restore->ServiceStart();
while (Restore->IsServiceRunning)
Memo1->Lines->Add(Restore->GetNextLine());
Sin embargo al ejecutarlo en el TMemo no se muestra nada, se queda en blanco.
Todas las variables que aparecen (cAux, pItem, etc.) están perfectamente definidas; el proceso se ejecuta bien pero no muestra nada ¿Alguna idea?