IdFTP를 이용 로컬 파일을 서버로 업로드하는 예제
- 로컬파일 선택
- 업로드 시 프로그레스바로 진행률 표시
참고 코드
procedure TForm2.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
Edit1.Text := OpenDialog1.FileName;
end;
procedure TForm2.Button2Click(Sender: TObject);
var
LocalPath, RemotePath: string;
begin
LocalPath := Edit1.Text;
RemotePath := 'test/' + ExtractFileName(LocalPath);
IdFTP1.Host := 'hjf.pe.kr';
IdFTP1.Port := 21;
IdFTP1.Passive := True;
IdFTP1.Username := ''; // FTP user
IdFTP1.Password := ''; // FTP password
IdFTP1.Connect;
IdFTP1.Put(LocalPath, RemotePath);
IdFTP1.Disconnect;
end;
procedure TForm2.IdFTP1Work(ASender: TObject; AWorkMode: TWorkMode;
AWorkCount: Int64);
begin
ProgressBar1.Position := AWorkCount;
end;
procedure TForm2.IdFTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
AWorkCountMax: Int64);
begin
ProgressBar1.Max := AWorkCountMax;
end;샘플 프로젝트
문단제목
- Indy Project Demo Download : http://www.indyproject.org/Sockets/Demos/index.EN.aspx
IdFTPUpload.zip