Ir para conteúdo
Fórum Script Brasil
  • 0

Fazendo Backup.


Alex Freitas

Pergunta

Bom dia.

Gente preciso de uma ajuda. Estou criando em minha aplicação um tela de Backup, porem não sei ne por onde criar o código para para funcionar.

a minha form é a seguinte

unit UBkpRst;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Buttons, ComCtrls, StdCtrls, FileCtrl, ExtCtrls;

type

TFrmBkpRst = class(TForm)

RadioGroup1: TRadioGroup;

DriveComboBox1: TDriveComboBox;

DirectoryListBox1: TDirectoryListBox;

Animate1: TAnimate;

SpeedButton1: TSpeedButton;

SpeedButton2: TSpeedButton;

private

{ Private declarations }

public

{ Public declarations }

end;

var

FrmBkpRst: TFrmBkpRst;

implementation

{$R *.dfm}

end.

Estudei um pouco e vi que geralmente faz com o CopyFile, mais não consegui construir o código.

desde já agradeço.

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Hum... é, aí fica complicado! O ideal seria você já ter alguma coisa em mente, pois há várias maneiras de se fazer uma mesma coisa no Delphi. Se você já tivesse um código, seria mais fácil. Conselho: procure um pouco mais ^^ E depois poste suas dúvidas. Abraço!

Link para o comentário
Compartilhar em outros sites

  • 0

Abaixo segue um exemplo de backup, o usuário escolhe o arquivo que deseja realizar backup e depois ele escolhe o caminho onde ele deseja salvar este backup...

Como eu não sabia qual ao certo de qual extensão se trabalhar eu generalizei para todos os arquivos. (Isso irá funcionar para os arquivos mdb do Access normalmente).

Espero ajudar e esclarecer algo sobre sua duvida.

Att.

Luis Ricardo

unit UFrmBkpRst;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Buttons;

type
  TFrm_BkpRst = class(TForm)
    SpeedButtonBackup: TSpeedButton;
    SpeedButtonClose: TSpeedButton;
    OpenDialog1: TOpenDialog;
    SpeedButtonProcurar: TSpeedButton;
    GroupBox1: TGroupBox;
    EditCaminhoOrigem: TEdit;
    EditCaminhoDestino: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    SaveDialog1: TSaveDialog;
    procedure SpeedButtonProcurarClick(Sender: TObject);
    procedure SpeedButtonCloseClick(Sender: TObject);
    procedure SpeedButtonBackupClick(Sender: TObject);
  private
    { Private declarations }
    extensao: string;
  public
    { Public declarations }
  end;

var
  Frm_BkpRst: TFrm_BkpRst;

implementation

{$R *.dfm}

procedure TFrm_BkpRst.SpeedButtonProcurarClick(Sender: TObject);
 var tamanhodocaminho: integer;
begin
  if OpenDialog1.Execute then
     Begin
        EditCaminhoOrigem.Text := OpenDialog1.FileName;
        tamanhodocaminho := Length(OpenDialog1.filename);
        extensao := Copy(OpenDialog1.FileName, tamanhodocaminho-3, 4);   
     end;
end;

procedure TFrm_BkpRst.SpeedButtonCloseClick(Sender: TObject);
begin
  if Application.MessageBox('Deseja realmente sair?', 'Backup', MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON1) = IDYES then
     Close;
end;

procedure TFrm_BkpRst.SpeedButtonBackupClick(Sender: TObject);
begin
  { Realiza backup do arquivo }

  if Application.MessageBox('Deseja realmente realizar o backup deste arquivo?', 'Backup', MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON1) = IDYES then
     begin
        if SaveDialog1.Execute then
           begin
              EditCaminhoDestino.Text := SaveDialog1.FileName + extensao;
              CopyFile(PChar(EditCaminhoOrigem.Text),Pchar(EditCaminhoDestino.Text),True);
              ShowMessage('Backup Realizado com Sucesso!');
           end;
     end;
end;

end.

Link para o comentário
Compartilhar em outros sites

  • 0

Boa tarde!

O codigo que tentei foi o seguinte porem não funcionou...

unit UBkpRst;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Buttons, ComCtrls, StdCtrls, FileCtrl, ExtCtrls;

type

TFrmBkpRst = class(TForm)

RadioGroup1: TRadioGroup;

DriveComboBox1: TDriveComboBox;

DirectoryListBox1: TDirectoryListBox;

Animate1: TAnimate;

SpeedButton1: TSpeedButton;

SpeedButton2: TSpeedButton;

procedure SpeedButton1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FrmBkpRst: TFrmBkpRst;

implementation

{$R *.dfm}

procedure TFrmBkpRst.SpeedButton1Click(Sender: TObject);

begin

Animate1.Visible := True;

Animate1.Active := True; //ativa a animação

If RadioGroup1.ItemIndex = 0 then

begin

CopyFile(PChar(Application.ExeName)+('\Cadastros.mdb'), PChar(DirectoryListBox1.Directory);

end

end;

end.

Será que tem como mudar isso???

Link para o comentário
Compartilhar em outros sites

  • 0
O codigo que tentei foi o seguinte porem não funcionou...

CopyFile(PChar(Application.ExeName)+('\Cadastros.mdb'), PChar(DirectoryListBox1.Directory);

Será que tem como mudar isso???

Será que voce prestou um pouco de atenção na sintaxe do comando

CopyFile(PChar(EditCaminhoOrigem.Text),Pchar(EditCaminhoDestino.Text),True);

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...