라자루스 디버그서버 실행 에러
통합개발환경 라자루스가 설치된 폴더 안에 tools 폴더에는 디버깅에 도움을 주는 DebugServer 프로그램이 있습니다. 그런데 실행하면 EIPCError이라는 에러가 발생하네요.
Project FPC/Lazarus debug message server raised exception class 'EIPCError' with message:
This operation is illegal when the server is active.
At address 1001C5C92
▲ FSrv.StartServer 행에서 에러가 발생합니다. 그렇다고 이 행을 삭제하면 디버그 서버 기능을 하지 못 합니다.
해결 방법은...
▲ FSrv.Active := True를 주석 처리하면 됩니다. 아마도 라자루스가 업그레이드하면서 FSrv.StartServer하면 Active를 중복해서 True하게 되다 보니 에러가 발생하는 것으로 생각됩니다. 즉, FSrv.Active 를 중복해서 True할 필요가 없습니다.
▲ 주석 처리한 후에 실행하면 잘 작동합니다. 라자루스의 윈도우 프로그래밍에서 디버깅 메시지를 라자루스의 Messages 윈도우에 출력할 수 있다면 참 좋을 텐데, 없는 것 같아요. 대신에 DebugServer로 메시지를 보낼 수 있습니다.
'컴퓨터 > 프로그래밍' 카테고리의 다른 글
윈도우 프로그램 만들기 라자루스 컴포넌트 속성이란? (2) | 2021.05.30 |
---|---|
아리송한 MODBUS-RTU 특이점 (2) | 2021.05.28 |
나도 프로그래머 라자루스 통합 개발 환경 (0) | 2021.05.23 |