ciao a tutti,
devo fare il backup di un databasa firebird.
per farlo utilizzo i componenti della palette 'Interbase Admin' in particolare il componente IBBackupService.
questo il codice che ho scritto:
codice:
try
cxMemoBackUp.Visible:=True;
IBBackUpService := TIBBackupService.Create(Self);
IBBackUpService.LoginPrompt:=False;
IBBackUpService.Params.Add('user_name=SYSDBA');
IBBackUpService.Params.Add('password=masterkey');
CreateDir(ExtractFilePath(Application.ExeName)+'BackUp\');
IBBackUpService.Verbose:=True;
IBBackUpService.ServerName := ServerNome; //Server3
IBBackUpService.DatabaseName:= PathNome; //c:\programmi\mioprog\MioDb.Gdb
IBBackUpService.BackupFile.Clear;
NomeFile:=ExtractFilePath(Application.ExeName)+'Backup\MioDb '+FormatDateTime('yyyymmddhhnnss',now)+'.gbk';
while FileExists(NomeFile) do
NomeFile:=ExtractFilePath(Application.ExeName)+'Backup\MioDb '+FormatDateTime('yyyymmddhhnnss',now)+'.gbk';
IBBackUpService.BackupFile.Add(NomeFile);
IBBackUpService.Active:=True;
IBBackUpService.ServiceStart;
// ShowMessage('inizio backup '+NomeFile);
while not IBBackUpService.Eof do
cxMemoBackUp.lines.add(IBBackUpService.GetNextLine);
// ShowMessage('fine backup '+NomeFile);
finally
IBBackUpService.Active:=False;
IBBackUpService.Free;
ShowMessage('Generato File '+NomeFile);
cxMemoBackUp.Visible:=False;
end;
se questo codice viene eseguito dal pc che funge da server va tutto ok, mentre invece se viene eseguito da un pc Client ottengo questo errore:
codice:
I/O error for file "C:\PROGRAMMI\mioprog\MioDb.Gdb
error while trying to open file
impossibile trovare il file specificato
dice di non trovare il file che in effetti è sul SERVER di cui ho indicato il nome :
codice:
IBBackUpService.ServerName := ServerNome;
l'errore si verifica qui:
codice:
while not IBBackUpService.Eof do
cxMemoBackUp.lines.add(IBBackUpService.GetNextLine);
cosa ho mancato?
che suggerimenti mi potete dare?
grazie