簡易的FTP與多重連接問題 |
缺席
|
juneo
高階會員 發表:103 回覆:190 積分:118 註冊:2004-05-13 發送簡訊給我 |
請教各位先進,以下是FTP CODE
很簡易的只傳送單一檔案,可是卻無法連上FTP SERVER
帳號密碼對了以後就產生斷線,對方SERVER 是有支援多重連接的
是否我忘了設定哪些選項
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, StdCtrls, Buttons, ComCtrls, Gauges; type TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; IdFTP1: TIdFTP; Memo1: TMemo; OpenDialog1: TOpenDialog; BitBtn1: TBitBtn; Gauge1: TGauge; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Label1: TLabel; Label2: TLabel; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer); procedure IdFTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin idFTP1.Username := Edit4.Text; idFTP1.Password := Edit5.Text; idFTP1.Port := StrToInt(Edit3.Text); //idFTP1.Port := 21; idFTP1.Host := Edit2.Text; Edit1.Enabled:=False; Button1.Enabled:=False; try idFTP1.Connect(true,3000); try idFTP1.Put(OpenDialog1.FileName,ExtractFileName(OpenDialog1.FileName),false); idFTP1.disconnect; Memo1.Lines.Add(ExtractFileName(OpenDialog1.FileName) '傳送完成。'); Button1.Enabled:=True; except Memo1.Lines.Add('檔案名稱錯誤。'); end; except Memo1.Lines.Add('連線錯誤'); end; end; procedure TForm1.FormCreate(Sender: TObject); begin Memo1.Clear; end; procedure TForm1.BitBtn1Click(Sender: TObject); begin OpenDialog1.FileName:=Edit1.Text; If OpenDialog1.Execute then Edit1.Text:=OpenDialog1.FileName; Edit1.Enabled:=True; end; procedure TForm1.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer); begin Gauge1.Progress:= AWorkCount; end; procedure TForm1.IdFTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer); begin Gauge1.MaxValue:=AWorkCountMax; end; end.分享比獲得更快樂--Juneo |
James
高階會員 發表:10 回覆:290 積分:220 註冊:2002-07-25 發送簡訊給我 |
|
juneo
高階會員 發表:103 回覆:190 積分:118 註冊:2004-05-13 發送簡訊給我 |
|
juneo
高階會員 發表:103 回覆:190 積分:118 註冊:2004-05-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |