procedure TForm1.Btn_YedekleClick(Sender: TObject);
var
gun, ay, yil : Word;
gun_ay_yil : string;
s, ServerAdi,DataYoluAdi :string;
begin
s:=IBDataSet1PATH.AsString; // ( TERMINAL:C:\DATA\DEMO.GDB )
ServerAdi := copy(s,1,pos(':',s)-1);
DataYoluAdi := copy(s,pos(':',s)+1,Length(s)-pos(':',s));
If Application.MessageBox('Yedekleme işlemi veritabanınızın boyutuna göre birkaç dakika sürebilir.'+#13#10+'Devam etmek istiyor musunuz ? ','Dikkat',4+0+32)=Idyes Then Begin
cxGrid1.Visible:=False;
Memo1.Visible:=True;
DecodeDate(Date, yil, ay, gun);
gun_ay_yil := IntToStr(gun)+'_'+IntToStr(ay) + '_' + IntToStr(yil);
Memo1.Lines.Clear;
with IBBackupService1 do begin
DatabaseName :=DataYoluAdi;
ServerName:=ServerAdi;
Protocol :=TCP;
Active := True;
Screen.Cursor := crHourGlass;
try
BackupFile.Clear;
BackupFile.Add(Data_Yolu.Text+'\'+IBDataSet1KOD.AsString+'-'+gun_ay_yil+'.gbk');
ServiceStart;
While not Eof do
Memo1.Lines.Add(GetNextLine);
MessageDlg('Yedekleme başarıyla tamamlandı!',mtInformation,[mbOK], 0);
Memo1.Lines.Clear;
finally
Active := False;
Screen.Cursor := crDefault;
cxGrid1.Visible:=True;
Memo1.Visible:=False;
end;
end;
end;
End;
Arkadaşlar yukarıdaki kodla Yedek alma işleminde IBBackupService1 i çift tıklayıp Connection Remote Seçip Server ve Protocolü de elle yazmassam terminal makinelerdeki datanın yedeğini alamıyorum.Hata Veriyor.Kodla olmuyor ama elle oluyor...
Hata kodundan anladığım kadarı ile siz işlemi başlattığınızda Backup service'i attach olmuş durumda muhtemelen (tıpkı TIBDabase gibi düşünün connection = True kalmış gibi) bilmem anlatabildim mi?
Yani işlemi başlatmadan önce DeAttache gibi bir şey yapılmalı diye tahmin ediyorum.