Q&A

  • EIdException은 어떻게 쓰는 겁니까??
밑에 제 질문에 이렇게 답변 해주셧는데요...


kumho1.pas(1565): Undeclared identifier: 'EIdSocketError'

메시지가 뜹니다... 어떻게 쓰는 건가요?? 알려주세요 ㅠ.ㅠ


Try ~ except 문에  EIdSocketError 사용하세요...

Try

Except
  on EIdSocketError do
      Application.MessageBox( '서버를 찾을수 없습니다', '에러',    
      MB_ICONERROR+MB_OK );

end;

참고로
EIdSocketError = class(EIdException)

Description

EIdSocketError is an exception class raised when a socket error occurs.
Last Error is the number code for that error.


그럼 즐프 ~


>indy 의 idFTP를 사용하여 ftp파일 전송을 구현하고 있습니다.
>
>그런데 접속이 잘 되면 아무 문제가 없는데...
>
>ftp서버가 꺼져있다던가 잠겼을때 즉 접속이 안되었을때 에러처리를 해주고 싶은데 방법을 모르겠네요...
>
>with idFTP1 do begin
>       Host := IP;
>       PORT := StrToInt(PT);
>       Username := ID;
>       Password := PASS;
>
>       try
>           Connect;
>       finally
>           if Connected then begin
>               ChangeDir('/'); //무슨뜻인지 질문
>               ExtractFileName(UploadOpenDialog1.FileName));
>
>              //idFTP1.Put(FileName + '.txt', '.data'+FileName + '.txt');
>              idFTP1.Put(abDir+FileName+'.txt',ExtractFileName(abDir+FileName+'.txt'));
>           end
>           else begin
>            ShowMessage('FTP가 연결되지 않았습니다.');
>           end;
>
>          DisConnect;
>         ShowMessage('전송되었습니다.');
>       end;
>end;
>
>
>이게 소스인데여 만약에 conect가 실패하면은...
>
>영문 에러가 뜨죠 소켓어쩌고 저쩌고...
>
>만약 에러처리를 하고싶다면...제가 지정한 메세지띄우고 어떤 처리를 하려면
>
>어떻게 하여야하는지 알려주세요 부탁드립니다 ㅠ.ㅠ

1  COMMENTS
  • Profile
    ㉯㉰감자 2003.06.06 00:21
    IdException은 Indy콤포넌트에서 사용하는 에러죠..

    IdException에다 커서 두고 F1만 눌러보셨어도.. 금방 아셨을거라 생각하는데요

    IdException에서 F1을 누르면 다음과 같이 나올겁니다

    Exception for Socket errors.

    EIdSocketError = class(EIdException)

    Description

    EIdSocketError is an exception class raised when a socket error occurs. Last Error is the number code for that error.

    그러면 이놈을 쓰기 위해서는 EIdException이 선언된 Unit을 알아야 겠죠?
    이놈이 선언된 Unit을 uses절에 추가를 하셔야 사용할 수가 있잖아요

    그럼...

    EIdSocketError = class(EIdException)
                                     -------------
    여기서 밑줄 부분이 녹색으로 나올겁니다

    클릭해보세요

    그럼 다시 다음과 같은 화면이 나올겁니다

    EIdException

    Hierarchy        Unit: IdException
    ------------------------------------------
    Base Exception class for Indy.

    EIdException = class(Exception)

    Description

    EIdException is an Exception that is the Base Exception class for all Indy Exception descendants. Indy does not raise the standard Exception class.

    <요까지>

    Indy이 기본 에러 클래스가 어쩌고.. 설명있고 맨 위에 보시면
    Unit : IdException
    이라고 적혀있죠?

    넹 바로 IdException이라는 유닛에 선언이 되어 있다네요

    그럼 uses절에 IdException을 추가 하고 컴파일 해보십시오

    그럼.. 끝입니다..

    즐프하세요





    • 박정순
    • 2003.06.06 00:39
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 임진묵
      2003.06.06 01:39
      TCP 던지 파워소켓이 있잖아요.. 거기에 아이피하고 포트 하고 넣고 연결 누르시면... 연결이 정상적으로...
    • bluechip
      2003.06.06 02:27
      현재는 님과 같은 방법으로 사용중입니다 결과를 실시간으로 나타내야 하기 때문에 매번 연결/연결해제 ...
    • 장의성
    • 2003.06.06 00:04
    • 1 COMMENTS
    • /
    • 0 LIKES
    • ㉯㉰감자
      2003.06.06 00:21
      IdException은 Indy콤포넌트에서 사용하는 에러죠.. IdException에다 커서 두고 F1만 눌러보셨어도.. 금...
    • ㉯㉰감자
      2003.06.06 01:36
      http://www.redwiki.net/wiki/moin.cgi/Design_20Issue_20When_20Using_20IOCP_20in_20a_20Winsock_20Serve...
    • 방재웅
      2003.06.06 03:25
      안녕하세요. 저역시 자세히는 모르지만 아는데까지 설명드리겠습니다. IOCP는 서버 side에서 주로 사...
    • 이승근
    • 2003.06.05 22:47
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 김경록
      2003.06.06 18:42
    • 이성찬
      2003.06.12 05:40
      간단히 레파지토리 활용하세요. 폼 상속이 쉽고 간편해집니다. 생성한 폼에 코딩중 중복된 부분을 해준...
    • 이승근
      2003.06.06 19:36
      상속을 받는다는게 무슨뜻이며 어떻게 받아야 하는거져... 초봅니다... 고수님 부탁드려여...^^
    • 김경록
      2003.06.07 05:59
      예를 들어서.. MainForm1 이라는 어떤 기능을 가진 Form을 만들었다고 가정합시다.. 이 폼의 선언부에...
    • 권광화
    • 2003.06.05 22:42
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 오선배
      2003.06.05 23:03
      function Lj(s: string; len: integer): string; { ex)Lj(4,'AB')-> 'AB  ' } var  &n...
    • 이광수
      2003.07.23 22:00
      http://suppul.x-y.net/bbs/board.php3?table=delphi&query=view&l=37&p=1&go=0 입니다.
    • 이정은
    • 2003.06.05 21:25
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 홍미자
      2003.06.23 23:38
      ______________ 1.변수 선언    var   Cnt : Integer; 2.레포트의 BeforePrint 이...
    • 신명곤
      2003.06.06 04:34
      sql에 between 문을 쓰면 되지않을까 생각하는 데요
    • 김명찬
      2003.06.05 21:35
      쿼리할때부터 필요한 날짜까지만 쿼리를 하거나.. subdetail 밴드를 사용하여 OnNeedData 이벤트를 사요...
    • 김명찬
    • 2003.06.05 21:02
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 방재웅
      2003.06.06 03:29
      다른 항목은 모르겠지만 요 레지스트리를 사용하시면 기본글꼴은 고정이 가능합니다. 참고로, 폼의 ...
    • KDDG_ZZOM
      2003.06.05 21:14
      우선 Open을 ExecSQL로 바꿔서 해보세요... Open은 조회할때만 사용하시고요... 즐프하세요...
    • 정문희
      2003.06.06 00:20
    • 초보
    • 2003.06.05 19:34
    • 2 COMMENTS
    • /
    • 0 LIKES
    • KDDG_ZZOM
      2003.06.05 19:48
      필드의 널값을 비교할려면 IS NULL,  IS NOT NULL이런식으로 해야되는 예약어라고 생각하시는게...
    • 이광수
      2003.06.05 19:48
      데이터 베이스에 따라 다르겠지만 오라클의 경우는 = null을 쓰시면 결과를 얻을수 없습니다. null 의 ...
    • 아폴론
    • 2003.06.05 19:23
    • 2 COMMENTS
    • /
    • 0 LIKES
    • KDDG_09
      2003.06.05 19:54
      clBtnFace 과 clSilver 는 틀린색깔이죠.... clBtnFace는 시스템 색이죠.... 바탕화면 등록정보에서 화면...
    • ㉯㉰감자
      2003.06.05 19:48
      clBtnFace같은 경우는 OS의 테스크탑에서 설정값 색상값을 가지거든요 아마 98이나 xp에서 clGray하면 ...
    • 임형호
    • 2003.06.05 19:02
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 타락천사
      2003.06.09 02:57
      안녕하세여. 타락임다.. 별로 권하고 싶지 않습니다. 공유 폴더 만들면 바이러스를 걸리게 할 뿐입니...
    • goodlsw
    • 2003.06.05 09:46
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 한원희
      2003.06.07 12:50
      안녕하세요. 한원희입니다. 아마도 다음과 같이 코딩하신거 같은데...   Form1.ShowModal;...
    • yosule
      2003.06.05 08:02
      메인폼을 MDI 폼 스타일로 바꾸세요
    • 맑고투명
      2003.06.06 06:44
    • yosule
      2003.06.06 08:24
      씁쓸...
    • 마르
    • 2003.06.05 05:08
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박상기
      2003.06.05 07:48
      Delphi Symbol Module의 약자로서 이것이 안 생기게 할려면 델파이 메뉴에서 Tools -> Environmen...
    • 김철홍
      2003.06.18 03:29
      Record를 이용해 보심이.. ex) Type       pdata = ^TData;  &n...
    • 박정일
      2003.06.11 03:59
      DLL에서 스트링을 넘길때는  PChar로 넘겨야 안전합니다. 그리고, unit 소스에 ShareMem이 첫번...
    • 방재웅
      2003.06.06 03:36
      만일 APP가 델파이라면 TStringList 를 사용해보세요. 아니면 포인터를 사용하시는 것도 괜찮구요.
    • yosule
      2003.06.05 08:44
      클래스를 이용한 개체(Object)를 리턴하는 방법으로 해보시죠!
    • 오병주
      2003.06.05 03:00
      Try ~ except 문에  EIdSocketError 사용하세요... Try Except   on EIdSocke...