자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
C++ Builder 문의 드립니다
2019.05.17 10:52
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안녕하십니까
현재 c++ Builder6의로 개발된 소스를 10.1 Berlin으로 변경하고 있습니다
그런데 indySocket부분에서 막혀서 진도가 나가질 않아서 질문드립니다.
__fastcall TPINGThread::TPINGThread(bool CreateSuspended, AnsiString Host, AnsiString Folder) : TThread(CreateSuspended)
{
FreeOnTerminate = FALSE;
m_CloseEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
m_PING = new TIdIcmpClient(NULL);
m_PING->Host = Host;
m_PING->ReceiveTimeout = (Environment.OPTION.PING.PingTimeOut + 1) * 1000;
m_PING->OnReply = PingReply; <<== 이부분에서 오류가
m_PingTime = 0;
m_PINGLog.SetDirectory (Folder);
m_PINGLog.SetFileNameType (LOG_FILENAME_DATEHOUR);
}
오류나는 부분은 해더파일에서 아래와 같이 선언되여 있습니다
이부분을 어떻게 수정해야 될까요?
__published:
void __fastcall PingReply(TComponent *ASender, const TReplyStatus &AReplyStatus);
현재 빌드하면 오류메세지는 아래와 같습니다
[bcc32 Error] PINGThread.cpp(17): E2034 Cannot convert 'void (_fastcall * (_closure )(TComponent *,const TReplyStatus &))(TComponent *,const TReplyStatus &)' to 'TOnReplyEvent'
Full parser context
PINGThread.cpp(9): parsing: _fastcall TPINGThread::TPINGThread(bool,AnsiString,AnsiString)
C++ Builder 문의 드립니다
2019.05.17 10:52
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안녕하십니까
현재 c++ Builder6의로 개발된 소스를 10.1 Berlin으로 변경하고 있습니다
그런데 indySocket부분에서 막혀서 진도가 나가질 않아서 질문드립니다.
__fastcall TPINGThread::TPINGThread(bool CreateSuspended, AnsiString Host, AnsiString Folder) : TThread(CreateSuspended)
{
FreeOnTerminate = FALSE;
m_CloseEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
m_PING = new TIdIcmpClient(NULL);
m_PING->Host = Host;
m_PING->ReceiveTimeout = (Environment.OPTION.PING.PingTimeOut + 1) * 1000;
m_PING->OnReply = PingReply; <<== 이부분에서 오류가
m_PingTime = 0;
m_PINGLog.SetDirectory (Folder);
m_PINGLog.SetFileNameType (LOG_FILENAME_DATEHOUR);
}
오류나는 부분은 해더파일에서 아래와 같이 선언되여 있습니다
이부분을 어떻게 수정해야 될까요?
__published:
void __fastcall PingReply(TComponent *ASender, const TReplyStatus &AReplyStatus);
현재 빌드하면 오류메세지는 아래와 같습니다
[bcc32 Error] PINGThread.cpp(17): E2034 Cannot convert 'void (_fastcall * (_closure )(TComponent *,const TReplyStatus &))(TComponent *,const TReplyStatus &)' to 'TOnReplyEvent'
Full parser context
PINGThread.cpp(9): parsing: _fastcall TPINGThread::TPINGThread(bool,AnsiString,AnsiString)
인디 버전이 올라가며, 일부 메소드 또는 이벤트의 파라메터들이 변경되었습니다.
OnReply 이벤트는 10.3에서 생성하니 다음과 같이 파라메터가 구성됩니다.
__published: // IDE-managed Components
TIdIcmpClient *IdIcmpClient1;
void __fastcall IdIcmpClient1Reply(TComponent *ASender, TReplyStatus * const AReplyStatus);