線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1150
推到 Plurk!
推到 Facebook!

文件上传问题

答題得分者是:geniustom
justm
一般會員


發表:8
回覆:3
積分:2
註冊:2003-12-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-30 17:44:34 IP:218.108.xxx.xxx 未訂閱
各位大大,我要在程序中实现自动上传文件的功能,请问,我用idftp发出文件后,如何才能知道传输成功进行后续操作.
geniustom
版主


發表:100
回覆:303
積分:260
註冊:2003-01-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-30 18:17:08 IP:219.68.xxx.xxx 未訂閱
justm 您好.. 關於您的問題..使用try..except即可 假設您有一個按鈕..是專門拿來上傳用的.. 請看以下程式碼 < class="code"> procedure TForm1.SpeedButton2Click(Sender: TObject); var i:integer; filename:string; begin try for i:=0 to FileListBox1.Count-1 do begin filename:=FileListBox1.Items.Strings[i]; IdFTP1.Put(form1.Hint filename,filename,false); Label2.Caption:='上傳 ' filename; application.ProcessMessages; end; except showmessage('複製失敗..可能沒有檔案喔'); exit //這時就離開副程式了 end; //-------------以下就是您可做的後續動作... showmessage('個人設定檔上傳成功'); end; 供參考...GOOD LUCK
justm
一般會員


發表:8
回覆:3
積分:2
註冊:2003-12-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-30 18:32:02 IP:218.108.xxx.xxx 未訂閱
geniustom : 感谢你的回答,可是,我所要求的是上传成功与否并不需要用户干预,我是在程序运行的过程中自动执行上传过程,我的程序要等待上传成功后,自动向下执行,如果失败,则需要反复重试几次后再向下执行.我希望有一个上传成功的参数,告诉我程序是不是该向下执行,
geniustom
版主


發表:100
回覆:303
積分:260
註冊:2003-01-03

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-30 20:48:51 IP:219.68.xxx.xxx 未訂閱
justm 您好.. 上面只是我的範例..您也可以變通一下ㄚ.. 例如..寫在WHILE裡..加個FLAG來判斷ㄚ..
procedure TForm1.FormActivate(Sender: TObject);
var
   i:integer;
   filename:string;
   success:boolean;  //成功與否的旗標
begin
   filename:='aaa.txt';
   IdFTP1.Disconnect;
   IdFTP1.Connect(true);
   success:=false;
   while success=false do
   begin
      success:=true;
      try
         IdFTP1.Put(form1.Hint filename,filename,false);
      except
         success:=false;  //傳送失敗時
      end;
      application.ProcessMessages;
   end;
   //-------------以下就是您可做的後續動作...
   .
   .
   .
   .
end;
這是基本的程式邏輯..應該不需要說明了吧?
系統時間:2024-05-11 18:52:59
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!