델파이는 Try ... except ... end 로 예외처리를 지원하고 있고 Indy 또한 Error Exception을 지원합니다.
하지만 예전에는 Indy의 exception이 IdException에 정의되어 있었습니다.
하지만 지금은 IdException을 uses 하면 파일이 있다고 나오지만
예전 코드나 예제는 더이상 사용할 수 없습니다.
왜냐하면 에러 정의가 IdException이 아닌 IdStack으로 옮겨졌기 때문입니다.
그래서 옛날 코드나 예제를 사용하면 특정 인디 버전부터는 E2003 Undeclared identifier 에러가 발생합니다.
델파이는 대부분의 예제가 08년 09년을 기점으로 그 이전에 많이 기록이 남아 있습니다.
이제는 인디 컴포넌트의 예외처리를 하려면 IdStack을 uses해야 합니다.
위와 같이 처리하면 됩니다.
위 코드는 서버 접속 시 10060 Time Out 에러에 대한 예외처리를 하고 있습니다.
어느 상황의 에러가 어떤 코드인지 알고 싶다면, 아래 사이트를 참고하세요.
Windows http://www.sockets.com/err_lst1.htm#ErrorsInNumericOrder
Linux http://www.basiclinuxcommands.com/2008/07/linux-error-codes-basic-linux-command.html
'컴퓨터 > Delphi' 카테고리의 다른 글
[QuantumGrid] CheckBox 사용 (0) | 2018.11.30 |
---|---|
이상한 Undeclared (0) | 2017.06.16 |
TAlphaColor의 색상 표현 (0) | 2016.11.19 |
TEdit 클릭 시 내용 지워지기, 다시 나타내기 (0) | 2016.11.05 |
[FMX][Timage] 이미지 복사 (0) | 2016.09.25 |