Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Firebird Yedekleme ve Geri Yükleme
#1
Değerli arkadaşlar merhaba,

Delphi 7 ve firebird kullanarak küçük bir proje hazırladım. Tek veritabanı kullandım. Bunun program içerisinden yedekleme ve geri yüklemesini nasıl yaparım? Direk kopyala yapıştırın pek sağlıklı olmadığını okudum.
Cevapla
#2
Selamlar
Aşağıdaki linki takip edebilirsiniz.

https://www.delphican.com/showthread.php...+yedekleme
Yazılımcı, kahveyi koda çeviren bir organizmadır.
Cevapla
#3
Merhabalar. Ben FB Bckup ve Restore için FD bileşenlerini kullanıyorum. Kodlarımı alltadır. Restore işlemi de aynı mantıkla çalıştırabilirsiniz.. BCKup alıp Gün_ay_yıl şeklinde isimlendirdiğim için yukarıdaki değişkenler..

Bu arada Formunuza bir TFDIBBackup ve TFDIBRestore bileşeni eklemeniz gerekiyor.


 
  drm := copy(dm1.ib1.DatabaseName, 11, Length(dm1.ib1.DatabaseName) - 10);
   adres := copy(drm, 1, Length(drm) - 8);
   ad := copy(drm, Length(adres) + 1, 8);
   DecodeDate(Date, yil, ay, gun);
   DecodeTime(time, saat, dk, sn, ms);
   gun_ay_yil := IntToStr(yil) + IntToStr(ay) + IntToStr(gun);
   try
     sonuc := ShellWait('cmd.exe', PWideChar('/C ' + 'gfix -validate db\2013.snc -user sysdba -password masterkey'), '\', True, True, True, sonuc1);
     sonuc := ShellWait('cmd.exe', PWideChar('/C ' + 'gfix -kill db\2013.snc -user sysdba -password masterkey'), '\', True, True, True, sonuc1);
     sonuc := ShellWait('cmd.exe', PWideChar('/C ' + 'gfix -sweep db\2013.snc -user sysdba -password masterkey'), '\', True, True, True, sonuc1);
     // Burada bakımlar yapılıyor
   finally
     Sleep(50);
   end;

   FDPhysFBDriverLink1.DriverID := 'FB';
   FDPhysFBDriverLink1.VendorLib := GetCurrentDir() + '\fbclient.dll';
   Backup.UserName := 'SYSDBA';
   Backup.Password := 'masterkey';
   Backup.Database := adres + 'DB_ad_.FBD';
   Backup.Verbose := True;
   Backup.Host := 'localhost';
   Backup.BackupFiles.Clear;

   Backup.BackupFiles.Add(adres + gun_ay_yil + '.fbk');
   Backup.Backup;
   TRY
     zipFile(adres + gun_ay_yil + '.zip', adres + gun_ay_yil + '.fbk');
     FINALLY DeleteFile(adres + gun_ay_yil + '.fbk');

   END;
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#4
Yedeklemeyi şu şekilde yapmışım:
procedure TFYedekleme.BitBtn1Click(Sender: TObject);
var
 s: string;
 IniFile: TIniFile;
 yer: string;
begin
 IBBackupService1 := TIBBackupService.Create(nil);
 ForceDirectories(OnlineEdit2.Text);
 IniFile := TIniFile.Create(ExtractFileDir(Application.ExeName) +
   '\DataBase.ini');
 if IniFile.ReadString(FAna.Sirket, 'Adres', '') <> '' then
   yer := IniFile.ReadString(FAna.Sirket, 'Adres', '');
 s := OnlineEdit2.Text;
 if s[length(s)] <> '\' then
   s := s + '\';
 if FileExists(s + EditDosyaAdi.Text + '.gbk') then
 begin
   ShowMessage('Bu dosya ismi ile yedekleme yapılmış, lütfen dosya ismini değiştiriniz.')
     
 end
 else
 begin
   Memo1.Lines.Add('YEDEKLEME BAŞLADI !..');
   with IBBackupService1 do
   begin
     LoginPrompt := False;
     Params.Add('user_name=' + IniFile.ReadString(FAna.Sirket,
       'User', ''));
     Params.Add('password=' + IniFile.ReadString(FAna.Sirket,
       'Sifre', ''));

     Attach;
     try
       Verbose := True;
       DatabaseName := yer;
       if (OnlineEdit2.Text <> 'C:\') and (OnlineEdit2.Text <> 'c:\') and
         (OnlineEdit2.Text <> 'A:\') and (OnlineEdit2.Text <> 'a:\') and
         (OnlineEdit2.Text <> 'B:\') and (OnlineEdit2.Text <> 'b:\') and
         (OnlineEdit2.Text <> 'D:\') and (OnlineEdit2.Text <> 'd:\') and
         (OnlineEdit2.Text <> 'E:\') and (OnlineEdit2.Text <> 'e:\') and
         (OnlineEdit2.Text <> 'F:\') and (OnlineEdit2.Text <> 'f:\') then
         BackupFile.Add(OnlineEdit2.Text + '\' + EditDosyaAdi.Text + '.gbk')
       else
         BackupFile.Add(OnlineEdit2.Text + EditDosyaAdi.Text + '.gbk');

       ServiceStart;
       Memo1.Lines.Clear;
       Memo1.Lines.Add('YEDEKLEME BAŞLADI !..');
       While not Eof do
         Memo1.Lines.Add(GetNextLine);
     finally
       Active := False;
       Memo1.Lines.Add(s + EditDosyaAdi.Text + '.gbk');
       Memo1.Lines.Add('YEDEKLEME BAŞARI İLE TAMAMLANDI !..');
     end;
   end;
 end;
 IBBackupService1.Free;
end;

Geri yüklemeyi de şu şekilde yapmışım:
procedure TFYedekleme.BitBtn3Click(Sender: TObject);
var
 IniFile: TIniFile;
 yer: string;
begin
 IBRestoreService1 := TIBRestoreService.Create(nil);
 if MessageBox(handle, 'Geri yüklemek istediğinizden emin misiniz?', 'Uyarı',
   MB_YESNO) = mrYes then
 begin
   Memo2.Lines.Add('GERİ YÜKLEME BAŞLADI !..');

   DMVeri.IBVeri.Close;
   DMVeri.IBTVeri.Active := False;
   IniFile := TIniFile.Create(ExtractFileDir(Application.ExeName) +
     '\DataBase.ini');
   with IBRestoreService1 do
   begin

     LoginPrompt := False;
     Options := [Replace, CreateNewDB];
     Params.Add('user_name=' + IniFile.ReadString(FLikaPro.Sirket,
       'User', ''));
     Params.Add('password=' + IniFile.ReadString(FLikaPro.Sirket,
       'Sifre', ''));
     Params.Add('DEFAULT CHARACTER SET WIN1254');
     Attach;
     try
       Verbose := True;
       PageSize := 16384;
       BackupFile.Add(LabeledEdit1.Text);
       if IniFile.ReadString(FLikaPro.Sirket, 'Adres', '') <> '' then
         yer := IniFile.ReadString(FLikaPro.Sirket, 'Adres', '');

       DatabaseName.Add(yer);
       ServiceStart;
       Memo2.Lines.Clear;
       Memo2.Lines.Add('GERİ YÜKLEME BAŞLADI !..');
       While not Eof do
         Memo2.Lines.Add(GetNextLine);
     finally
       if Active then
         Detach;
       Memo2.Lines.Add('GERİ YÜKLEME BAŞARI İLE TAMAMLANDI !..'); 

     end;
   end;
 end;
 IBRestoreService1.Free;
end;
Cevapla
#5
(21-04-2021, Saat: 13:26)shooterman Adlı Kullanıcıdan Alıntı: Selamlar
Aşağıdaki linki takip edebilirsiniz.

https://www.delphican.com/showthread.php...+yedekleme

Hocam ta eskilerden kalma jedi komponent paketi var elimde. Yıllar önce kurmuştum ama şimdi kuramadım bir türlü. Onun için gönderdiğiniz linkteki dosyayı çalıştıramadım.

(21-04-2021, Saat: 13:53)mcuyan Adlı Kullanıcıdan Alıntı: Merhabalar. Ben FB Bckup ve Restore için FD bileşenlerini kullanıyorum. Kodlarımı alltadır. Restore işlemi de aynı mantıkla çalıştırabilirsiniz.. BCKup alıp Gün_ay_yıl şeklinde isimlendirdiğim için yukarıdaki değişkenler..

Bu arada Formunuza bir TFDIBBackup ve TFDIBRestore bileşeni eklemeniz gerekiyor.


 
  drm := copy(dm1.ib1.DatabaseName, 11, Length(dm1.ib1.DatabaseName) - 10);
   adres := copy(drm, 1, Length(drm) - 8);
   ad := copy(drm, Length(adres) + 1, 8);
   DecodeDate(Date, yil, ay, gun);
   DecodeTime(time, saat, dk, sn, ms);
   gun_ay_yil := IntToStr(yil) + IntToStr(ay) + IntToStr(gun);
   try
     sonuc := ShellWait('cmd.exe', PWideChar('/C ' + 'gfix -validate db\2013.snc -user sysdba -password masterkey'), '\', True, True, True, sonuc1);
     sonuc := ShellWait('cmd.exe', PWideChar('/C ' + 'gfix -kill db\2013.snc -user sysdba -password masterkey'), '\', True, True, True, sonuc1);
     sonuc := ShellWait('cmd.exe', PWideChar('/C ' + 'gfix -sweep db\2013.snc -user sysdba -password masterkey'), '\', True, True, True, sonuc1);
     // Burada bakımlar yapılıyor
   finally
     Sleep(50);
   end;

   FDPhysFBDriverLink1.DriverID := 'FB';
   FDPhysFBDriverLink1.VendorLib := GetCurrentDir() + '\fbclient.dll';
   Backup.UserName := 'SYSDBA';
   Backup.Password := 'masterkey';
   Backup.Database := adres + 'DB_ad_.FBD';
   Backup.Verbose := True;
   Backup.Host := 'localhost';
   Backup.BackupFiles.Clear;

   Backup.BackupFiles.Add(adres + gun_ay_yil + '.fbk');
   Backup.Backup;
   TRY
     zipFile(adres + gun_ay_yil + '.zip', adres + gun_ay_yil + '.fbk');
     FINALLY DeleteFile(adres + gun_ay_yil + '.fbk');

   END;

Hocam galiba sizin yönteminizde de komponent kurmak gerekli. Onun için bu yöntemi de kullanamam.

(21-04-2021, Saat: 17:02)MuhammedYasir Adlı Kullanıcıdan Alıntı: Yedeklemeyi şu şekilde yapmışım:
procedure TFYedekleme.BitBtn1Click(Sender: TObject);
var
 s: string;
 IniFile: TIniFile;
 yer: string;
begin
 IBBackupService1 := TIBBackupService.Create(nil);
 ForceDirectories(OnlineEdit2.Text);
 IniFile := TIniFile.Create(ExtractFileDir(Application.ExeName) +
   '\DataBase.ini');
 if IniFile.ReadString(FAna.Sirket, 'Adres', '') <> '' then
   yer := IniFile.ReadString(FAna.Sirket, 'Adres', '');
 s := OnlineEdit2.Text;
 if s[length(s)] <> '\' then
   s := s + '\';
 if FileExists(s + EditDosyaAdi.Text + '.gbk') then
 begin
   ShowMessage('Bu dosya ismi ile yedekleme yapılmış, lütfen dosya ismini değiştiriniz.')
     
 end
 else
 begin
   Memo1.Lines.Add('YEDEKLEME BAŞLADI !..');
   with IBBackupService1 do
   begin
     LoginPrompt := False;
     Params.Add('user_name=' + IniFile.ReadString(FAna.Sirket,
       'User', ''));
     Params.Add('password=' + IniFile.ReadString(FAna.Sirket,
       'Sifre', ''));

     Attach;
     try
       Verbose := True;
       DatabaseName := yer;
       if (OnlineEdit2.Text <> 'C:\') and (OnlineEdit2.Text <> 'c:\') and
         (OnlineEdit2.Text <> 'A:\') and (OnlineEdit2.Text <> 'a:\') and
         (OnlineEdit2.Text <> 'B:\') and (OnlineEdit2.Text <> 'b:\') and
         (OnlineEdit2.Text <> 'D:\') and (OnlineEdit2.Text <> 'd:\') and
         (OnlineEdit2.Text <> 'E:\') and (OnlineEdit2.Text <> 'e:\') and
         (OnlineEdit2.Text <> 'F:\') and (OnlineEdit2.Text <> 'f:\') then
         BackupFile.Add(OnlineEdit2.Text + '\' + EditDosyaAdi.Text + '.gbk')
       else
         BackupFile.Add(OnlineEdit2.Text + EditDosyaAdi.Text + '.gbk');

       ServiceStart;
       Memo1.Lines.Clear;
       Memo1.Lines.Add('YEDEKLEME BAŞLADI !..');
       While not Eof do
         Memo1.Lines.Add(GetNextLine);
     finally
       Active := False;
       Memo1.Lines.Add(s + EditDosyaAdi.Text + '.gbk');
       Memo1.Lines.Add('YEDEKLEME BAŞARI İLE TAMAMLANDI !..');
     end;
   end;
 end;
 IBBackupService1.Free;
end;

Geri yüklemeyi de şu şekilde yapmışım:
procedure TFYedekleme.BitBtn3Click(Sender: TObject);
var
 IniFile: TIniFile;
 yer: string;
begin
 IBRestoreService1 := TIBRestoreService.Create(nil);
 if MessageBox(handle, 'Geri yüklemek istediğinizden emin misiniz?', 'Uyarı',
   MB_YESNO) = mrYes then
 begin
   Memo2.Lines.Add('GERİ YÜKLEME BAŞLADI !..');

   DMVeri.IBVeri.Close;
   DMVeri.IBTVeri.Active := False;
   IniFile := TIniFile.Create(ExtractFileDir(Application.ExeName) +
     '\DataBase.ini');
   with IBRestoreService1 do
   begin

     LoginPrompt := False;
     Options := [Replace, CreateNewDB];
     Params.Add('user_name=' + IniFile.ReadString(FLikaPro.Sirket,
       'User', ''));
     Params.Add('password=' + IniFile.ReadString(FLikaPro.Sirket,
       'Sifre', ''));
     Params.Add('DEFAULT CHARACTER SET WIN1254');
     Attach;
     try
       Verbose := True;
       PageSize := 16384;
       BackupFile.Add(LabeledEdit1.Text);
       if IniFile.ReadString(FLikaPro.Sirket, 'Adres', '') <> '' then
         yer := IniFile.ReadString(FLikaPro.Sirket, 'Adres', '');

       DatabaseName.Add(yer);
       ServiceStart;
       Memo2.Lines.Clear;
       Memo2.Lines.Add('GERİ YÜKLEME BAŞLADI !..');
       While not Eof do
         Memo2.Lines.Add(GetNextLine);
     finally
       if Active then
         Detach;
       Memo2.Lines.Add('GERİ YÜKLEME BAŞARI İLE TAMAMLANDI !..'); 

     end;
   end;
 end;
 IBRestoreService1.Free;
end;

Hocam gönderdiğiniz kodları kendime göre düzenlemeye çalıştım. Öncelikle yedekleme kodları için uğraştım ama Attach komutunda çalışma zamanı hata veriyor. Bu konuda acemi olduğumdan da daha ileriye gidemedim.

Değerli arkadaşlar eski dökümanlarımı karıştırınca bir şeyler buldum ve olayı çözdüm. Biraz düzenleyeyim ihtiyaç duyan arkadaşların faydalanması için buraya eklerim. Yardımcı olan herkese teşekkürler.
Cevapla
#6
Pardon, ben Delphi 7 kısmını geçmişim sanırım. Bu kodlar delphi xe surumlerinde (muhtemelen 10.2 üstü) çalışacaktır.

Delpgi 7 için jedi kullanmanız gerekiyor
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#7
Arkadaşlar Delphi 7 ve firebird için kodları düzenledim ve aşağıda paylaşıyorum.

Form üzerindeki bileşenler 1 adet IBBackupService, 1 adet IBRestoreService, 3 adet label, 2 adet buton, 2 adet listbox, 1 adet panel ve 1 adet progressbar

Form görüntüsü için resim yükleyemedim. Alttaki linki tıklarsanız resim açılır.

https://resimyukle.xyz/i/V8A7f6


Ve tüm Unit 'in kodları... Umarım faydalı olur. Kolay gelsin.

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, IBServices, ComCtrls, ExtCtrls, StdCtrls,DateUtils;

type
 TForm1 = class(TForm)
   IBBackupService1: TIBBackupService;
   IBRestoreService1: TIBRestoreService;
   Panel1: TPanel;
   ProgressBar1: TProgressBar;
   Label5: TLabel;
   Yedekle_Btn: TButton;
   Label6: TLabel;
   Label8: TLabel;
   LB_Tarih_Saat: TListBox;
   LB_Dosya_Adi: TListBox;
   Geri_Yukle_Btn: TButton;
   procedure OnAyarlar(Service: TIBCustomService);
   procedure Yedekle_BtnClick(Sender: TObject);
   procedure Geri_Yukle_BtnClick(Sender: TObject);
   procedure FormShow(Sender: TObject);
   procedure LB_Tarih_SaatClick(Sender: TObject);
   procedure LB_Dosya_AdiClick(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.OnAyarlar(Service: TIBCustomService);
begin
  with Service do
     begin
        Active := False;
        ServerName :='localhost'; {*pc'nin adı veya ip  adresi. Ağdaki ve ya kendi  pc'niz olabilir. Kendi bilgisayarım olduğu için localhost yazdım*}
        Protocol :=TCP; {*Basğlantı protokol tipi. Diğer seçenekler için    Bileşeni seçip Object Inspectordan bakabilirsiniz.*}
        LoginPrompt := False; {* Şifreyi biz gireceğimiz için False Yapıyoruz.*}
        Params.Clear; // Params özelliğini tyemizle
        Params.Add('user_name=' +'SYSDBA'); //SYSDBA=kullanıcı adı
        Params.Add('password=' + 'masterkey'); //masterkey=Şifre
     end; //with

  // ProgressBar Özelliklerini ayarla
  ProgressBar1.Min:=0;
  ProgressBar1.Max:=10;
  ProgressBar1.Position:=ProgressBar1.Min;
  Panel1.Show;
  application.ProcessMessages;
  
end;
procedure TForm1.Yedekle_BtnClick(Sender: TObject);
Var
  yedek_dosya_klasoru, yedek_dosya_adi : AnsiString ;
  Yil, Ay, Gun, saat, dakika, saniye, salise : Word;
  Anlik_Tarih : TDate ;
  Anlik_Saat : TTime ;
begin
  Anlik_Tarih := Date ; //şu anki tarihi Anlik_Tarih değişkenine ata
  Anlik_Saat := Time ;  //şu anki saati Anlik_Saat değişkenine ata

  
  DecodeDate ( Anlik_Tarih, Yil, Ay, Gun) ;
  DecodeTime ( Anlik_Saat, saat, dakika, saniye, salise) ;

  with IBBackupService1 do
     begin
        OnAyarlar(IBBackupService1);//procedureyi çağır.
        Verbose := True; //PrograssBar İçin Gerekli

        DatabaseName := ExtractFilePath(Application.ExeName)+'DATA.FDB' ; //yedeklenecek ana veritabanı yolu

        yedek_dosya_klasoru := ExtractFilePath(Application.ExeName) + 'Yedek' ; //Programın kurulu olduğu dizinde Yedek isminde klasör

        If Not DirectoryExists(yedek_dosya_klasoru) Then // yedek dosya klasörü yoksa oluştur
           ForceDirectories(yedek_dosya_klasoru) ;

        BackupFile.Clear ;

        yedek_dosya_adi := inttostr(Gun) + '_' + inttostr(Ay) + '_' + inttostr(Yil) + '_' +
                           inttostr(saat) + '_' + inttostr(dakika) + '_' + inttostr(saniye) + '.FDB';//Yedek dosyaya isim vermek. Ben tarih ve saat olarak isim vermeyi seçtim

        BackupFile.Add(yedek_dosya_klasoru + '\' + yedek_dosya_adi + ' =2048') ;{* yedeklemenin yapılacağı konum ve yedek dosyasının adı. ikinci parametre olan =2048 sanırım yedekleme yapılırken verinin kaçar byte olarak kopyalanacağını belirliyor. *}

        try
           Active := True;
           ServiceStart;  //yedeklemeye başla
           while not EOF do
              begin
                 Label5.Caption:=GetNextLine;//yedekleme durumunu labele yaz

                 {*Progresbar özelliklerini ayarla*}
                 if ProgressBar1.Position=ProgressBar1.Max then
                    ProgressBar1.Position:=0;
                 ProgressBar1.Position:=ProgressBar1.Position+1;
                 application.ProcessMessages;
              end;

           LB_Tarih_Saat.Items.Add(DateToStr(Anlik_Tarih) + ' ' + TimeToStr(Anlik_Saat)) ; //tarih ve saati listboxa yaz
           LB_Dosya_Adi.Items.Add(yedek_dosya_adi) ; //yedek dosya adını listboxa yaz

           LB_Tarih_Saat.Items.SaveToFile(ExtractFilePath(Application.ExeName) + 'Yedek_Tarih.txt'); // listboxı kaydet
           LB_Dosya_Adi.Items.SaveToFile(ExtractFilePath(Application.ExeName) + 'Dosya_Adi.txt'); // listboxı kaydet
        finally
           Active := False;
           Panel1.Hide;
        end; //try
  end; //with
end;

procedure TForm1.Geri_Yukle_BtnClick(Sender: TObject);
Var
  Yedek_Dosya_Adi : AnsiString ;
begin
  with IBRestoreService1 do
     begin
        OnAyarlar(IBRestoreService1);//procedureyi çağır.
        Verbose := True;//PrograssBar İçin Gerekli
        Pagesize:=2048;{* Restore ederken Veritabanının PageeSize özelliğini ayarla. farklı bir seçeneği seçebilirsiniiz*}
        Options := [Replace];//eski veritabanını sil

        DatabaseName.Clear;
        DatabaseName.Add(ExtractFilePath(Application.ExeName)+'DATA.FDB');//yedek dosyanın yükleneceği yer ve dosyanın adı
        BackupFile.Clear;

        Yedek_Dosya_Adi := ExtractFilePath(Application.ExeName) + 'Yedek\' + LB_Dosya_Adi.Items.Strings[LB_Dosya_Adi.ItemIndex] ; //listboxtan geri yüklenmek istenen veritabanının adını al
        if Not fileExists(Yedek_Dosya_Adi) then //geri yüklenmek istenen yedek veritabanı yoksa
           begin
              ShowMessage('Yüklenmek istenen yedek dosya bulunamadı.');
              exit ;//procedure den çık
           end ;

        BackupFile.Add(Yedek_Dosya_Adi); {* daha önce yedeklenmiş olan dosya yolu ve dosya adı *}
        try
           Active := True;
           ServiceStart;//geri yüklemeye başla
           while not EOF do
              Begin
                 Label5.Caption:=GetNextLine; //geri yükleme durumunu labela yaz

                 {*Progresbar özelliklerini ayarla*}
                 if ProgressBar1.Position=ProgressBar1.Max then
                    ProgressBar1.Position:=0;

                 ProgressBar1.Position:=ProgressBar1.Position+1;
                 application.ProcessMessages;
             End;
        finally
           Active := False;
           Panel1.Hide;
        end; //try
  end; //with
end;

procedure TForm1.FormShow(Sender: TObject);
begin
  if fileExists(ExtractFilePath(Application.ExeName)+'Yedek_Tarih.txt') then
     LB_Tarih_Saat.Items.LoadFromFile(ExtractFilePath(Application.ExeName) + 'Yedek_Tarih.txt');

  if fileExists(ExtractFilePath(Application.ExeName)+'Dosya_Adi.txt') then
     LB_Dosya_Adi.Items.LoadFromFile(ExtractFilePath(Application.ExeName) + 'Dosya_Adi.txt');

  LB_Tarih_Saat.ItemIndex := LB_Tarih_Saat.Items.Count - 1 ;
  LB_Tarih_SaatClick(Sender);
end;

procedure TForm1.LB_Tarih_SaatClick(Sender: TObject);
begin
 LB_Dosya_Adi.ItemIndex := LB_Tarih_Saat.ItemIndex ;
end;

procedure TForm1.LB_Dosya_AdiClick(Sender: TObject);
begin
 LB_Tarih_Saat.ItemIndex := LB_Dosya_Adi.ItemIndex ;

end;

end.
Cevapla
#8
DPR Dosyası
program Project1;

uses
 Forms,
 Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;
end.



Pas Dosyası
unit Unit1;
 
interface
 
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, JvComponentBase, JvBaseDlg, JvBrowseFolder, IBServices, RzButton, Gauges, JvFormPlacement,
JvAppStorage, JvAppIniStorage;
 
type
TForm1 = class(TForm)
  RzBitBtn1: TRzBitBtn;
  IBRestoreService1: TIBRestoreService;
  IBBackupService1: TIBBackupService;
  JBF: TJvBrowseForFolderDialog;
  OpenDialog1: TOpenDialog;
  Memo1: TMemo;
  Edit1: TEdit;
  Edit2: TEdit;
  RzBitBtn2: TRzBitBtn;
  Gauge1: TGauge;
  JvAppIniFileStorage1: TJvAppIniFileStorage;
  JvFormStorage1: TJvFormStorage;
  RzBitBtn3: TRzBitBtn;
  Edit3: TEdit;
  Edit4: TEdit;
  Label1: TLabel;
  Label2: TLabel;
  procedure RzBitBtn1Click(Sender: TObject);
  procedure RzBitBtn2Click(Sender: TObject);
  procedure Edit2Change(Sender: TObject);
  procedure RzBitBtn3Click(Sender: TObject);
  procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
private
  { Private declarations }
public
  { Public declarations }
end;
 
var
Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
//---------- PROGRESSBARLI YEDEK ALMA / YÜKLEME 
procedure OnAyarlar(Service: TIBCustomService);
begin
with Service do
begin
  Active := False;
   ServerName :='localhost'; {*pc'nin adı veya ip  adresi. Ağdaki ve ya kendi  pc'niz olabilir. Kendi bilgisayarım olduğu için localhost yazdım*}
  Protocol :=TCP; {*Basğlantı protokol tipi. Diğer seçenekler için    Bileşeni seçip Object Inspectordan bakabilirsiniz.*}
  LoginPrompt := False; {* Şifreyi biz gireceğimiz için False Yapıyoruz.*}
  Params.Clear; // Params özelliğini tyemizle
  Params.Add('user_name=' +FORM1.EDIT3.TEXT); //SYSDBA=kullanıcı adı
  Params.Add('password=' +FORM1.EDIT4.TEXT); //masterkey=Şifre
end; //with
// ProgressBar Özelliklerini ayarla
FORM1.gauge1.MinValue:=0;
FORM1.gauge1.MaxValue:=100;
 FORM1.Gauge1.Progress:=  FORM1.Gauge1.MinValue;
application.ProcessMessages;
end;
 
 
 
procedure TForm1.RzBitBtn1Click(Sender: TObject);
 
VAR
YEDEKDOSYA:STRING;
begin
OpenDialog1.Filter :='DATA DOSYASI (*.FDB)|*.FDB|DATA DOSYASI (*.GDB)|*.GDB|All files (*.*)|*.*';
IF OpenDialog1.Execute THEN BEGIN
 
EDIT1.Text:=OpenDialog1.FileName;
 
begin
MEMO1.Clear;
with IBBackupService1 do
begin
//procedureyi çağır.
  OnAyarlar(IBBackupService1);
//PrograssBar İçin Gerekli
  Verbose := True;
//yedeklenecek veritanaı yolu
  DatabaseName :=EDIT1.Text; // YEDEKLENECEK DOSYA KAYNAĞI
  BackupFile.Clear;
{* yedeklemenin yapılacağı konum ve yedek dosyasının adı. ikinci parametre olan =2048 sanırım yedekleme yapılırken verinin kaçar byte olarak kopyalanacağını belirliyor. *}
YEDEKDOSYA:= EDIT2.Text+'\'+'YEDDEX-'+datetostr(now)+'.FBK'+' =2048';
  BackupFile.Add(YEDEKDOSYA);
   try
    Active := True;
//      yedeklemeye başla
    ServiceStart;
    while not EOF do
           Begin
//yedekleme durumunu labela yaz
//     Label5.Caption:=GetNextLine;
 MEMO1.Lines.Add(GetNextLine);
     {*Progresbar özelliklerini ayarla*}
   if Gauge1.Progress=Gauge1.MaxValue then
   Gauge1.Progress:=0;
    Gauge1.Progress:= Gauge1.Progress+1;
   application.ProcessMessages;
End;
  finally
    Active := False;
  end; //try
end; //with
form1.gauge1.Progress:= 100;
 
 
END;
 
end;
END;
procedure TForm1.RzBitBtn2Click(Sender: TObject);
begin
IF JBF.Execute THEN BEGIN
EDIT2.Text:=JBF.Directory;
rzbitbtn1.Enabled:=true;
END;
end;
 
procedure TForm1.Edit2Change(Sender: TObject);
begin
IF EDIT2.Text='' THEN BEGIN
RZBITBTN1.Enabled:=FALSE;
END;
IF EDIT2.Text<>'' THEN BEGIN
RZBITBTN1.Enabled:=TRUE;
END;
end;
 
procedure TForm1.RzBitBtn3Click(Sender: TObject);
 
begin
MEMO1.Clear;
//    OpenDialog1.Filter := '*.FBK|*.FBK, *.*|*.*' ;
OpenDialog1.Filter :='YEDEK DOSYASI (*.FBK)|*.FBK|YEDEK DOSYASI (*.GBK)|*.GBK|All files (*.*)|*.*';
IF OPENDIALOG1.Execute THEN BEGIN
with IBRestoreService1 do
begin
//procedureyi çağır.
  OnAyarlar(IBRestoreService1);
//PrograssBar İçin Gerekli
  Verbose := True;
{* Restore ederken Veritabanının PageeSize
özelliğini ayarla. farklı bir seçeneği seçebilirsiniiz*}
  Pagesize:=2048;
//eski veritabanını sil
  Options := [Replace];
  //yedeklenecek veritanaı yolu
DatabaseName.Clear;
 
  DatabaseName.Add(EDIT2.Text+'\RESTORED_DATA'+datetostr(now)+'.FDB');
  BackupFile.Clear;
{* yedeklemenin yapılacağı konum ve yedek dosyasının adı. *}
BackupFile.Add(opendialog1.FileName);
   try
    Active := True;
//      yedeklemeye başla
    ServiceStart;
    while not EOF do
           Begin
//yedekleme durumunu labela yaz
//     Label5.Caption:=GetNextLine;
  MEMO1.Lines.Add(GetNextLine);
     {*Progresbar özelliklerini ayarla*}
   if Gauge1.Progress=Gauge1.MaxValue then
   Gauge1.Progress:=0;
    Gauge1.Progress:= Gauge1.Progress+1;
   application.ProcessMessages;
           End;
  finally
    Active := False;
  end; //try
end; //with
end;
form1.gauge1.Progress:= 100;
//label5.Caption:='GERİ YÜKLEME <<<---- Yapıldı İşlem Tamam...' + ExtractFileName(OpenDialog1.FileName);
//   MEMO1.Lines.Add(LABEL5.Caption);
END;
 
//end;
 
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
const
sc_DragMove=$F012;
begin
ReleaseCapture;
Form1.Perform(WM_SYSCOMMAND, sc_DragMove, 0);
end;
end.



Form Dosyası
object Form1: TForm1
  Left = 192
 Top = 124
 Width = 741
 Height = 244
 Caption = 'BACKUP-RESTORE - COMMANDX'
 Color = clBtnFace
 Font.Charset = DEFAULT_CHARSET
 Font.Color = clWindowText
 Font.Height = -11
 Font.Name = 'MS Sans Serif'
 Font.Style = []
 OldCreateOrder = False
 OnMouseDown = FormMouseDown
 PixelsPerInch = 96
 TextHeight = 13
 object Gauge1: TGauge
   Left = 0
   Top = 97
   Width = 725
   Height = 20
   Align = alBottom
   Progress = 0
 end
 object Label1: TLabel
   Left = 48
   Top = 57
   Width = 20
   Height = 13
   Caption = 'user'
 end
 object Label2: TLabel
   Left = 168
   Top = 56
   Width = 22
   Height = 13
   Caption = 'pass'
 end
 object RzBitBtn1: TRzBitBtn
   Left = 456
   Top = 31
   Width = 249
   Caption = 'Yedekle (FDB-GDB) - > (FBK-GBK)'
   Enabled = False
   TabOrder = 0
   OnClick = RzBitBtn1Click
   Glyph.Data = {
     36060000424D3606000000000000360400002800000020000000100000000100
     08000000000000020000420B0000420B00000001000000000000000000003300
     00006600000099000000CC000000FF0000000033000033330000663300009933
     0000CC330000FF33000000660000336600006666000099660000CC660000FF66
     000000990000339900006699000099990000CC990000FF99000000CC000033CC
     000066CC000099CC0000CCCC0000FFCC000000FF000033FF000066FF000099FF
     0000CCFF0000FFFF000000003300330033006600330099003300CC003300FF00
     330000333300333333006633330099333300CC333300FF333300006633003366
     33006666330099663300CC663300FF6633000099330033993300669933009999
     3300CC993300FF99330000CC330033CC330066CC330099CC3300CCCC3300FFCC
     330000FF330033FF330066FF330099FF3300CCFF3300FFFF3300000066003300
     66006600660099006600CC006600FF0066000033660033336600663366009933
     6600CC336600FF33660000666600336666006666660099666600CC666600FF66
     660000996600339966006699660099996600CC996600FF99660000CC660033CC
     660066CC660099CC6600CCCC6600FFCC660000FF660033FF660066FF660099FF
     6600CCFF6600FFFF660000009900330099006600990099009900CC009900FF00
     990000339900333399006633990099339900CC339900FF339900006699003366
     99006666990099669900CC669900FF6699000099990033999900669999009999
     9900CC999900FF99990000CC990033CC990066CC990099CC9900CCCC9900FFCC
     990000FF990033FF990066FF990099FF9900CCFF9900FFFF99000000CC003300
     CC006600CC009900CC00CC00CC00FF00CC000033CC003333CC006633CC009933
     CC00CC33CC00FF33CC000066CC003366CC006666CC009966CC00CC66CC00FF66
     CC000099CC003399CC006699CC009999CC00CC99CC00FF99CC0000CCCC0033CC
     CC0066CCCC0099CCCC00CCCCCC00FFCCCC0000FFCC0033FFCC0066FFCC0099FF
     CC00CCFFCC00FFFFCC000000FF003300FF006600FF009900FF00CC00FF00FF00
     FF000033FF003333FF006633FF009933FF00CC33FF00FF33FF000066FF003366
     FF006666FF009966FF00CC66FF00FF66FF000099FF003399FF006699FF009999
     FF00CC99FF00FF99FF0000CCFF0033CCFF0066CCFF0099CCFF00CCCCFF00FFCC
     FF0000FFFF0033FFFF0066FFFF0099FFFF00CCFFFF00FFFFFF00000080000080
     000000808000800000008000800080800000C0C0C00080808000191919004C4C
     4C00B2B2B200E5E5E500C8AC2800E0CC6600F2EABF00B59B2400D8E9EC009933
     6600D075A300ECC6D900646F710099A8AC00E2EFF10000000000000000000000
     0000000000000000000000000000000000000000000000000000000000000000
     0000000000000000000000000000000000000000000000000000E8E8E8E8E8E8
     E8E8A3CEA3D5D5D5D5D5E8E8E8E8E8E8E8E881AC81E3E3E3E3E3E8E8E8E8E8E8
     E8E8A3CEA3D6D6D6D6D6E8E8E8E8E8E8E8E881AC81E3E3E3E3E3E8E8E8E8E8E8
     E8E8A3D5D5A3A3A3A3A3E8E8E8E8E8E8E8E881E3E38181818181E8E8E8E8DFE8
     DFE8A3D6D5D5D5D6D6D6E8E8E8E8DFE8DFE881E3E3E3E3E3E3E3E8E8E8E8E8E8
     E8E8E8A3D6D6D6A3A3A3E8E8E8E8E8E8E8E8E881E3E3E3818181E8E8E8E8DFE8
     E8E8E8E8A3A3A3E8E8E8E8E8E8E8DFE8E8E8E8E8818181E8E8E8E8E8E8E8E8E8
     E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8A378787878
     78787878E8E8E8E8E8E8E8818181818181818181E8E8E8E8E8E8A3CEA3D5CECE
     CECEA3D578E8E8E8E8E881AC81E3ACACACAC81E381E8E8E8E8E8A3CEA3D5D5D5
     D5D5CED578E8E8E8E8E881AC81E3E3E3E3E3ACE381E8E8E8E8E8A3CEA3D5D5D5
     D5D5CED578E8E8E8E8E881AC81E3E3E3E3E3ACE381E8E8E8E8E8A3CEA3D6D6D6
     D6D6D5D8D8D8D8D8E8E881AC81E3E3E3E3E3E38181818181E8E8A3D5D5A3A3A3
     A3A3A3A3D8D8D8D8E8E881E3E38181818181818181818181E8E8A3D6D5D5D5D6
     D6D678E8E8D8D8D8D8E881E3E3E3E3E3E3E381E8E881818181E8E8A3D6D6D6A3
     A3A3E8E8E8E8D8E8D8D8E881E3E3E3818181E8E8E8E881E88181E8E8A3A3A3E8
     E8E8E8E8E8E8E8E8E8D8E8E8818181E8E8E8E8E8E8E8E8E8E881}
   NumGlyphs = 2
 end
 object Memo1: TMemo
   Left = 0
   Top = 117
   Width = 725
   Height = 89
   Align = alBottom
   Color = clBlack
   Font.Charset = DEFAULT_CHARSET
   Font.Color = clYellow
   Font.Height = -11
   Font.Name = 'MS Sans Serif'
   Font.Style = []
   ParentFont = False
   ScrollBars = ssVertical
   TabOrder = 1
 end
 object Edit1: TEdit
   Left = 8
   Top = 35
   Width = 433
   Height = 21
   Enabled = False
   TabOrder = 2
 end
 object Edit2: TEdit
   Left = 8
   Top = 8
   Width = 433
   Height = 21
   Enabled = False
   TabOrder = 3
   OnChange = Edit2Change
 end
 object RzBitBtn2: TRzBitBtn
   Left = 456
   Top = 4
   Width = 249
   Caption = 'Yedeklenen Yeri Se'#231
   TabOrder = 4
   OnClick = RzBitBtn2Click
   Glyph.Data = {
     36060000424D3606000000000000360400002800000020000000100000000100
     08000000000000020000330B0000330B00000001000000000000000000003300
     00006600000099000000CC000000FF0000000033000033330000663300009933
     0000CC330000FF33000000660000336600006666000099660000CC660000FF66
     000000990000339900006699000099990000CC990000FF99000000CC000033CC
     000066CC000099CC0000CCCC0000FFCC000000FF000033FF000066FF000099FF
     0000CCFF0000FFFF000000003300330033006600330099003300CC003300FF00
     330000333300333333006633330099333300CC333300FF333300006633003366
     33006666330099663300CC663300FF6633000099330033993300669933009999
     3300CC993300FF99330000CC330033CC330066CC330099CC3300CCCC3300FFCC
     330000FF330033FF330066FF330099FF3300CCFF3300FFFF3300000066003300
     66006600660099006600CC006600FF0066000033660033336600663366009933
     6600CC336600FF33660000666600336666006666660099666600CC666600FF66
     660000996600339966006699660099996600CC996600FF99660000CC660033CC
     660066CC660099CC6600CCCC6600FFCC660000FF660033FF660066FF660099FF
     6600CCFF6600FFFF660000009900330099006600990099009900CC009900FF00
     990000339900333399006633990099339900CC339900FF339900006699003366
     99006666990099669900CC669900FF6699000099990033999900669999009999
     9900CC999900FF99990000CC990033CC990066CC990099CC9900CCCC9900FFCC
     990000FF990033FF990066FF990099FF9900CCFF9900FFFF99000000CC003300
     CC006600CC009900CC00CC00CC00FF00CC000033CC003333CC006633CC009933
     CC00CC33CC00FF33CC000066CC003366CC006666CC009966CC00CC66CC00FF66
     CC000099CC003399CC006699CC009999CC00CC99CC00FF99CC0000CCCC0033CC
     CC0066CCCC0099CCCC00CCCCCC00FFCCCC0000FFCC0033FFCC0066FFCC0099FF
     CC00CCFFCC00FFFFCC000000FF003300FF006600FF009900FF00CC00FF00FF00
     FF000033FF003333FF006633FF009933FF00CC33FF00FF33FF000066FF003366
     FF006666FF009966FF00CC66FF00FF66FF000099FF003399FF006699FF009999
     FF00CC99FF00FF99FF0000CCFF0033CCFF0066CCFF0099CCFF00CCCCFF00FFCC
     FF0000FFFF0033FFFF0066FFFF0099FFFF00CCFFFF00FFFFFF00000080000080
     000000808000800000008000800080800000C0C0C00080808000191919004C4C
     4C00B2B2B200E5E5E500C8AC2800E0CC6600F2EABF00B59B2400D8E9EC009933
     6600D075A300ECC6D900646F710099A8AC00E2EFF10000000000000000000000
     0000000000000000000000000000000000000000000000000000000000000000
     0000000000000000000000000000000000000000000000000000E8E8E8E8E8E8
     E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
     E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8A378787878
     78787878787878E8E8E8E8818181818181818181818181E8E8E8A3CEA3D5CECE
     CECECECECEA3D578E8E881AC81E3ACACACACACACAC81E381E8E8A3CEA3D5D5D5
     D5D5D5D5D5CED578E8E881AC81E3E3E3E3E3E3E3E3ACE381E8E8A3CEA3D5D5D5
     D5D5D5D5D5CED578E8E881AC81E3E3E3E3E3E3E3E3ACE381E8E8A3CEA3D5D5D5
     D5D5D5D5D5CED578E8E881AC81E3E3E3E3E3E3E3E3ACE381E8E8A3CEA3D5D5D5
     D5D5D5D5D5CFC8C8D0E881AC81E3E3E3E3E3E3E3E3E3ACACE8E8A3CEA3D5D5D5
     D5D5D5D5CFBAC7C1BAC981AC81E3E3E3E3E3E3E3E381ACAC81ACA3D5D5A3A3A3
     A3A3A3A3CFC7CDCDC7CF81E3E381818181818181E3AC8181ACE8A3D5D5D5D5D5
     D5D5D5CEC1C0D6D5C1C181E3E3E3E3E3E3E3E3ACACACE3E3ACACE8A3D5D5D5D5
     A3A3A3A3A3BABAC7BAD0E881E3E3E3E381818181818181AC81E8E8E8A3A3A3A3
     E8E8E8E8BACFBAC8C9CFE8E881818181E8E8E8E881E881ACACE8E8E8E8E8E8E8
     E8E8E8E8E8E8CFCFE8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
     E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
     E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8}
   NumGlyphs = 2
 end
 object RzBitBtn3: TRzBitBtn
   Left = 456
   Top = 64
   Width = 249
   Caption = 'Restore  (FBK-GBK) -> (FDB-GDB)'
   TabOrder = 5
   OnClick = RzBitBtn3Click
   Glyph.Data = {
     36060000424D3606000000000000360400002800000020000000100000000100
     08000000000000020000430B0000430B00000001000000000000000000003300
     00006600000099000000CC000000FF0000000033000033330000663300009933
     0000CC330000FF33000000660000336600006666000099660000CC660000FF66
     000000990000339900006699000099990000CC990000FF99000000CC000033CC
     000066CC000099CC0000CCCC0000FFCC000000FF000033FF000066FF000099FF
     0000CCFF0000FFFF000000003300330033006600330099003300CC003300FF00
     330000333300333333006633330099333300CC333300FF333300006633003366
     33006666330099663300CC663300FF6633000099330033993300669933009999
     3300CC993300FF99330000CC330033CC330066CC330099CC3300CCCC3300FFCC
     330000FF330033FF330066FF330099FF3300CCFF3300FFFF3300000066003300
     66006600660099006600CC006600FF0066000033660033336600663366009933
     6600CC336600FF33660000666600336666006666660099666600CC666600FF66
     660000996600339966006699660099996600CC996600FF99660000CC660033CC
     660066CC660099CC6600CCCC6600FFCC660000FF660033FF660066FF660099FF
     6600CCFF6600FFFF660000009900330099006600990099009900CC009900FF00
     990000339900333399006633990099339900CC339900FF339900006699003366
     99006666990099669900CC669900FF6699000099990033999900669999009999
     9900CC999900FF99990000CC990033CC990066CC990099CC9900CCCC9900FFCC
     990000FF990033FF990066FF990099FF9900CCFF9900FFFF99000000CC003300
     CC006600CC009900CC00CC00CC00FF00CC000033CC003333CC006633CC009933
     CC00CC33CC00FF33CC000066CC003366CC006666CC009966CC00CC66CC00FF66
     CC000099CC003399CC006699CC009999CC00CC99CC00FF99CC0000CCCC0033CC
     CC0066CCCC0099CCCC00CCCCCC00FFCCCC0000FFCC0033FFCC0066FFCC0099FF
     CC00CCFFCC00FFFFCC000000FF003300FF006600FF009900FF00CC00FF00FF00
     FF000033FF003333FF006633FF009933FF00CC33FF00FF33FF000066FF003366
     FF006666FF009966FF00CC66FF00FF66FF000099FF003399FF006699FF009999
     FF00CC99FF00FF99FF0000CCFF0033CCFF0066CCFF0099CCFF00CCCCFF00FFCC
     FF0000FFFF0033FFFF0066FFFF0099FFFF00CCFFFF00FFFFFF00000080000080
     000000808000800000008000800080800000C0C0C00080808000191919004C4C
     4C00B2B2B200E5E5E500C8AC2800E0CC6600F2EABF00B59B2400D8E9EC009933
     6600D075A300ECC6D900646F710099A8AC00E2EFF10000000000000000000000
     0000000000000000000000000000000000000000000000000000000000000000
     0000000000000000000000000000000000000000000000000000E8E8E8E8E8E8
     E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8
     E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8A378787878
     787878787878AAE8E8E8E88181818181818181818181ACE8E8E8A3A3D5CECECE
     CECECECECEA378E8E8E88181E3ACACACACACACACAC8181E8E8E8A3A3CED5D5D5
     D5D5D5D5D5CE78A3E8E88181ACE3E3E3E3E3E3E3E3AC8181E8E8A3A3CED5D5D5
     D5D5D5D5D5CEAA78E8E88181ACE3E3E3E3E3E3E3E3ACAC81E8E8A3CEA3D5D5D5
     D5D5D5D5D5CED578A3E881AC81E3E3E3E3E3E3E3E3ACE38181E8A3CEAAAAD5D5
     D5D5D5D5D5CED5AA78E881ACACACE3E3E3E3E3E3E3ACE3AC81E8A3D5CEA3D6D6
     D6D6D6D6D6D5D6D678E881E3AC81E3E3E3E3E3E3E3E3E3E381E8A3D5D5CEA3A3
     A3A3A3A3A3A3A3A3CEE881E3E3AC81818181818181818181ACE8A3D6D5D5D5D5
     D6D6D6D6D678E8E8E8E881E3E3E3E3E3E3E3E3E3E381E8E8E8E8E8A3D6D6D6D6
     A3A3A3A3A3E8E8E8E8E8E881E3E3E3E38181818181E8E8E8E8E8E8E8A3A3A3A3
     E8E8E8E8E8E8E8090909E8E881818181E8E8E8E8E8E8E8818181E8E8E8E8E8E8
     E8E8E8E8E8E8E8E80909E8E8E8E8E8E8E8E8E8E8E8E8E8E88181E8E8E8E8E8E8
     E8E8E809E8E8E809E809E8E8E8E8E8E8E8E8E881E8E8E881E881E8E8E8E8E8E8
     E8E8E8E8090909E8E8E8E8E8E8E8E8E8E8E8E8E8818181E8E8E8}
   NumGlyphs = 2
 end
 object Edit3: TEdit
   Left = 8
   Top = 72
   Width = 121
   Height = 21
   TabOrder = 6
   Text = 'SYSDBA'
 end
 object Edit4: TEdit
   Left = 136
   Top = 72
   Width = 121
   Height = 21
   TabOrder = 7
   Text = 'SADASDAD'
 end
 object IBRestoreService1: TIBRestoreService
   ServerName = '127.0.0.1'
   Protocol = TCP
   Params.Strings = (
     'user_name=SYSDBA'
     'password=111111')
   LoginPrompt = False
   TraceFlags = []
   Verbose = True
   PageSize = 2048
   PageBuffers = 0
   Left = 104
   Top = 8
 end
 object IBBackupService1: TIBBackupService
   ServerName = '127.0.0.1'
   Protocol = TCP
   Params.Strings = (
     'user_name=SYSDBA'
     'password=111111')
   LoginPrompt = False
   TraceFlags = []
   Verbose = True
   BlockingFactor = 0
   Options = []
   Left = 72
   Top = 8
 end
 object JBF: TJvBrowseForFolderDialog
   Directory = 'C:\Users\OSB\Desktop'
   Left = 130
   Top = 8
 end
 object OpenDialog1: TOpenDialog
   Filter = 'FDB|*.FDB|GDB|*.GDB|FBK|*.FBK|GBK|*.GBK|*.*|*.*'
   InitialDir = 'E:\DATA_BACKUP'
   Left = 8
   Top = 2
 end
 object JvAppIniFileStorage1: TJvAppIniFileStorage
   StorageOptions.BooleanStringTrueValues = 'TRUE, YES, Y'
   StorageOptions.BooleanStringFalseValues = 'FALSE, NO, N'
   FileName = 'YEDEK_AYARLAR.ini'
   SubStorages = <>
   Left = 165
   Top = 7
 end
 object JvFormStorage1: TJvFormStorage
   AppStorage = JvAppIniFileStorage1
   AppStoragePath = '%FORM_NAME%\'
   Options = [fpState, fpLocation, fpActiveControl]
   StoredProps.Strings = (
     'Edit1.Text'
     'Edit2.Text'
     'Edit3.Anchors'
     'Edit4.Anchors'
     'Edit3.Text'
     'Edit4.Text')
   StoredValues = <>
   Left = 195
   Top = 7
 end
end
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  firebird bağlantı hatası. Kamuran Alpkaya 17 19.146 06-08-2025, Saat: 14:20
Son Yorum: mcuyan
  FIREBIRD SIRALAMA Kral 10 1.934 15-10-2024, Saat: 19:04
Son Yorum: Kral
  Firebird bağlantı kopmaları (ZeosLib) boreas 0 773 12-06-2024, Saat: 16:08
Son Yorum: boreas
  Firebird Database Create Doğru mu? Altıner 2 1.311 02-05-2024, Saat: 11:00
Son Yorum: hi_selamlar
  pardusda dbeaver ıle fırebırd kullanımı hakkında sadikacar60 8 2.344 29-02-2024, Saat: 17:50
Son Yorum: Hayati



Konuyu Okuyanlar: