Q&A

  • INDY에서 idFTP사용시 코넥트 에러 처리에 관한 질문!!
with idFTP1 do begin
                Host := IP;
                PORT := StrToInt(PT);
                Username := ID;
                Password := PASS;
                try
                    Connect(true,7000);     ------①
                    //Connect();              ------②
                Except
                    on EIdSocketError do begin ------③
                    Application.MessageBox( '서버를 찾을수 없습니다', '에러',MB_ICONERROR+MB_OK );
                    AllBtnOn;
                    P_send.Visible := False;
                    exit;
                    end;
                end;

제가 한 코딩입니다..

ftp로 파일을 업로드 시키는 구문이죠..

문제는 ftp서버로 인하여 접속이 안될 경우 에러를 터뜨리고 싶은데요..

③같은 코딩을 하였기에(이곳에 질문해서 얻은 코딩입니다^^)
①,②중 ②와 같이 connect();하였을경우

※참조 : connect함수 이렇습니다.
procedure TIdFTP.Connect(AAutoLogin: boolean = True;
  const ATimeout: Integer = IdTimeoutDefault);

시간이 디폴트로 먹어서 (-1이더군요)
한 20초 정도 지난후에 제가 지정한 에러메세지가 뜹니다.

그리하여 ①과 같이 시간을 지정 (7000은 7초입니다)하였더니

7초후 제가 지정한 에러가 아닌 CONNECT TIME OUT이라는 영문 에러가 뜹니다.

그 영문 에러띄우는곳을 찾아보려고 아무리 찾아봐도 못찾았습니다..

디폴트시간을 주었을때는 아주 긴시간후 소켓에러를 발생하여 제가 코딩한 에러가 뜨는데... 시간을 지정해주면 영문에러가 뜹니다...

제가 지정한 에러를 뜨게 해주는 방법 없을까요???


부탁드립니다...

1  COMMENTS
  • Profile
    박서규 2003.06.23 23:51
    님께서 쓰신게 인디 버젼 몇인지....??

    Indy9에는 IdResourceStrings라는 unit에 const로 지정이 되어있던데여..

    그리고 델파이 개발환경에서 혹시 나오는 메시지 아닌지요..??