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

IdFTP Get()問題

缺席
jimlee
一般會員


發表:16
回覆:13
積分:5
註冊:2005-07-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-12-12 12:01:45 IP:211.20.xxx.xxx 未訂閱
我目前用IndyFTP寫了一個Client自動向Server取檔的service application。 因為程式碼有點長…所以我先po出我覺得有問題的地方… 程式的下載動作: Client在向Server get檔案時, 我先將檔名命名為XXX.encode…等取完檔案後, 便會解碼為XXX.正常的副檔名…    我面臨到的問題是,假設Server端有一檔案20051212.UUU好了… Client自動連上了此ftp…在get時,我的目錄下也產生了20051212.encode… 但檔案並沒有開始下載…也就是檔案大小一直是0 kb…然後service就會整個hode在那邊而無法停止服務…程式沒有error message產生,在事件檢視器也沒有事件發生…so…想請問板友們,有什麼狀況會產生這樣的問題?謝謝。    
procedure TBakFormG.Get(FileName: String; bakIP : String = '');
var
  EncodedFullPath: String;
  DecodedFullPath: String;
  tmpB : Boolean;
begin
  tmpB := FTP.Connected;
  if (FTP.Connected = False) then
  begin
    tmpB := bakConnect(bakIP);
  end;      if tmpB then
  begin
    //建立檔案路徑
    if not DirectoryExists(TempDLDir   pubATMID) then
      CreateDir(TempDLDir   pubATMID);
    if not DirectoryExists(setDLDir   pubATMID) then
      CreateDir(setDLDir   pubATMID);
    EncodedFullPath := TempDLDir   pubATMID   '\'   FileName   '.Encoded';
    DecodedFullPath := setDLDir   pubATMID   '\'   pubATMID   FileName;        if FileExists(EncodedFullPath) then
    begin
      DeleteFile(EncodedFullPath);
    end;        FTP.TransferType := ftBinary;
    try
      FTP.Get(FileName, EncodedFullPath, True, True);
    except
      bIPList[IPList.IndexOf(bakIP)] := False;
      Disconnect();
      DeleteFile(EncodedFullPath);
      exit;
    end;        if FileExists(DecodedFullPath) then
    begin
      DeleteFile(DecodedFullPath);
    end;        //檔案解碼
    SCodec.CodecFile(EncodedFullPath, DecodedFullPath);
    DeleteFile(EncodedFullPath);
  end;
end;
系統時間:2024-05-13 17:32:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!