Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unit Unit1;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
- IdExplicitTLSClientServerBase, IdFTP, StdCtrls, FileCtrl, ExtCtrls;
- type
- TForm1 = class(TForm)
- Edit1: TEdit;
- Label1: TLabel;
- Label2: TLabel;
- Edit2: TEdit;
- Panel1: TPanel;
- DirectoryListBox1: TDirectoryListBox;
- DriveComboBox1: TDriveComboBox;
- Label3: TLabel;
- Label4: TLabel;
- Button3: TButton;
- Panel2: TPanel;
- Button1: TButton;
- IdFTP1: TIdFTP;
- Button2: TButton;
- procedure Button1Click(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure DirectoryListBox1Change(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- procedure Button3Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form1: TForm1;
- implementation
- {$R *.dfm}
- procedure GetFileList(const Folder, Filter: string; FileList: TStrings);
- var
- Search: TSearchRec;
- begin
- if FindFirst(Folder + Filter, faAnyfile, Search) = 0 then
- try
- FileList.BeginUpdate;
- try
- repeat
- if (Search.Attr and faDirectory <> faDirectory) then
- FileList.Add(Search.Name);
- until
- FindNext(Search) <> 0;
- finally
- FileList.EndUpdate;
- end;
- finally
- FindClose(Search);
- end;
- end;
- procedure MultiStor(FTP: TIdFTP; const Folder: string; const Filter: string = '*.*');
- var
- I: Integer;
- FileList: TStrings;
- begin
- FileList := TStringList.Create;
- try
- GetFileList(Folder, Filter, FileList);
- for I := 0 to FileList.Count-1 do
- FTP.Put(Folder + FileList[I]);
- finally
- FileList.Free;
- end;
- end;
- procedure TForm1.Button1Click(Sender: TObject);
- begin
- IdFTP1.Host := 'ftp.host.com';
- IdFTP1.Username := 'usuario';
- IdFTP1.Password := 'senha';
- IdFTP1.Connect;
- IdFTP1.ChangeDir('/public_html/'); //a pasta onde vc quer largar suas fotos
- try
- //IdFTP1.Put('texto1.txt');
- //IdFTP1.Put('texto2.txt');
- //Envia todos arquivos de uma pasta pro servidor
- MultiStor(IdFTP1, Edit1.Text, Edit2.Text);
- //MultiStor(IdFTP1, 'C:\MyFolder\', '*.xml');
- except
- ShowMessage('Não foi possível enviar os arquivos!');
- end;
- IdFTP1.Disconnect;
- ShowMessage('Arquivos enviados com sucesso!');
- end;
- procedure TForm1.FormCreate(Sender: TObject);
- begin
- Edit1.Text:=ExtractFilePath(Application.ExeName);
- end;
- procedure TForm1.DirectoryListBox1Change(Sender: TObject);
- begin
- Edit1.Text:=DirectoryListBox1.Directory+'\';
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement