안녕하세요. 많은 도움을 얻고 있는 임병우입니다.
NMMSGServ, NMMsg 에 대해서 질문을 드릴려고
합니다.
현재 한 프로젝트에서 NMMSGServ, NMMsg 2개를 사용하고 있습니다.
용도가 다르죠..
1개는 mainform에 위치해 있고,
다른 한개는 다른 form 에 위치 해 있습니다.
제가 알기로는 port만 NMMSGServ, NMMsg 같으면 그 해당
host에 메세지가 전달 되는 지 알고 있습니다.
제가 궁금한것은 한 프로젝트에서 두 개에 메세지 서버의
port를 다르게 사용할 수 없냐 이거입니다.
예를들어 main form 에 port : 1234 이고 자식 form에
있는 메세지 서버에 port:6031(디폴트로 놓고,정확한숫자인지모르겠음)이면
자식 form 에 있는 메세지는 host를 자기자신에게 하면 당연히 전달이
되는데.. 다른 host ip 를 적으면 연결할 수 없다고 나옵니다.
메인 form 에 있는 메세지는 올바르게 동작이 됩니다.
그래서 main form port를 같게 했습니다.
그리고 자식 form 있는
procedure NMMSGServ1MSG(Sender: TComponent; const sFrom, sMsg: String);
다음과 같이 바꿨습니다.
procedure NMMSGServ2MSG(Sender: TComponent; const sFrom2, sMsg2: String);
그러면 자식 forma 에 있는 이벤트가 실행이 되어야 하는데..
procedure TFineProjectRoadInputForm.NMMSGServ2MSG(Sender: TComponent;
const sFrom2, sMsg2: String);
begin
showmessage('자식test입니다.');
end;
문제는 메인 form 에 있는 이벤트가 실행이 된다는 것입니다.
procedure TFineProjectRoadInputForm.NMMSGServ1MSG(Sender: TComponent;
const sFrom, sMsg: String);
begin
showmessage('메인form test입니다.');
end;
고수님들에 조언을 바랍니다.