Advertisement
filhotecmail

ATTterm;

Jan 20th, 2018
415
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 3.25 KB | None | 0 0
  1. unit ATTterm;
  2.  
  3. interface
  4.  
  5.  uses Classes, ATTTerm.EngineFtp,SysUtils;
  6.  
  7.  type TAntesdeIniciarAtualizacao = procedure ( ) of object;
  8.  
  9.  type EExceptionCaminhoPastaExecutaveis = class( Exception )
  10.  
  11.       public
  12.       Function StrException( const Value: string ): string;
  13.       constructor Create( AOwner: TComponent; Const Value: String ); reintroduce; overload;
  14.  end;
  15.  
  16.  
  17.  
  18. type TAtualizadorTerm = class( TComponent )
  19. private
  20.     FCaminhoexecutaveis: string;
  21.     Finteger: integer;
  22.     FEngine: TAtttermEngineFtp;
  23.     FDiretorioRaizFtp: string;
  24.     FDiretorioparaextracao: string;
  25.     FDiretoriodosExecutaveis: string;
  26.     Fprogress: integer;
  27.     FTAntesdeIniciarAtualizacao: TAntesdeIniciarAtualizacao;
  28.     function getFCaminhoexecutaveis: string;
  29.  
  30. {Private declaration}
  31. protected
  32. {Protected declaration}
  33. public
  34. {Public declaration declaration}
  35.  
  36.    constructor Create( AOwner: TComponent ); override;
  37.    destructor  Destroy; override;
  38.    procedure   AfterConstruction; override;
  39.    procedure   BeforeDestruction; override;
  40.  
  41. published
  42. {Protected declaration}
  43.   property Caminhoexecutaveis: string read getFCaminhoexecutaveis write FCaminhoexecutaveis;
  44.   property DiretorioRaizFtp: string read FDiretorioRaizFtp write FDiretorioRaizFtp;
  45.   property Diretorioparaextracao: string read FDiretorioparaextracao write FDiretorioparaextracao;
  46.   property DiretoriodosExecutaveis: string read FDiretoriodosExecutaveis write FDiretoriodosExecutaveis;
  47.   property Progress: integer read Fprogress;
  48.   property AntesdeAtualizar: TAntesdeIniciarAtualizacao read FTAntesdeIniciarAtualizacao write FTAntesdeIniciarAtualizacao;
  49.   function StartAtualizacao:Boolean;
  50.   procedure Register;
  51. end;
  52.  
  53. implementation
  54.  
  55. { TAtualizadorTerm }
  56.  
  57. procedure TAtualizadorTerm.AfterConstruction;
  58. begin
  59.   inherited AfterConstruction;
  60.  
  61. end;
  62.  
  63. procedure TAtualizadorTerm.BeforeDestruction;
  64. begin
  65.   inherited BeforeDestruction;
  66.  
  67. end;
  68.  
  69. constructor TAtualizadorTerm.Create( AOwner: TComponent );
  70. begin
  71.  
  72.   inherited  Create( AOwner );
  73. end;
  74.  
  75. destructor TAtualizadorTerm.Destroy;
  76. begin
  77.  
  78.   inherited Destroy;
  79. end;
  80.  
  81. function TAtualizadorTerm.getFCaminhoexecutaveis: string;
  82. begin    
  83.  
  84.    Result := FCaminhoexecutaveis;
  85.    EExceptionCaminhoPastaExecutaveis.Create(nil,FCaminhoexecutaveis);
  86.    
  87. end;
  88.  
  89. procedure TAtualizadorTerm.Register;
  90. begin
  91.   Classes.RegisterComponents('Atualizador', [ TAtualizadorTerm ]);
  92.  
  93. end;
  94.  
  95. function TAtualizadorTerm.StartAtualizacao: Boolean;
  96. begin
  97.   if assigned( FTAntesdeIniciarAtualizacao ) then
  98.   begin
  99.     FTAntesdeIniciarAtualizacao();
  100.   end;
  101.  
  102.   if not Assigned( FEngine ) then
  103.   begin
  104.     FEngine := TAtttermEngineFtp.Create( FDiretorioRaizFtp,FDiretorioparaextracao,FDiretoriodosExecutaveis,Fprogress );
  105.   end;  
  106.    
  107. end;
  108.  
  109.  { TExceptionCaminhoPastaExecutaveis }
  110.  
  111. constructor EExceptionCaminhoPastaExecutaveis.Create(AOwner: TComponent; const Value: String);
  112. begin
  113.  inherited Create( Value );
  114.   StrException( Value );
  115. end;
  116.  
  117. function EExceptionCaminhoPastaExecutaveis.StrException(const Value: string): string;
  118. begin
  119.  if Trim( Value ).IsEmpty then
  120.  Result:= ' Caminho da pasta dos executáveis não pode ser vazio, informe um valor ';
  121.  
  122. end;
  123.  
  124. initialization
  125.  RegisterClass( TAtualizadorTerm );
  126.  finalization
  127.  
  128. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement