Q&A

  • winshoes 컴포넌트에 대해서..
제가 udp를 이용해서 서버를 만들려고 하는데 winshoes 컴포넌트의 예제를 보니까. 받아서만 보내고 udp 자체내에서 보내는 방법이 설명되어 있질 않더군요..

만약에 client에서 접속을 하면 서버에서는 ip주소를 psPeer로 저장을하고 포트는 piPort로 저장을 하는건지요..?

그러면 서버에서 보내는곳에 Sendto(psPeer, piPort, 'message');와 같은 방법으로 보내게 되는 건지요..

제가 이부분에 대해서 잘 몰라서 그러는데 서버에서 클라이언트로 데이타를 보내는 방법을 자세히좀 설명해 주시면 감사하겠습니다.

그럼 수고들 하십시요..

2  COMMENTS
  • Profile
    이경문 2000.08.17 23:48
    Winshoes 7.039B을 기본적으로 설치를 하면

    C:Program FilesWinshoesDemosDelphiUDPCS 에

    간단한 클라이언트 & 서버 구조로 되어 있는 예제가 있습니다.

    그걸 보심이.....





    참고 : TWinshoeUDPServer에서 약간이 버그가 있습니다.

    Winshoes 8에서 버그가 고쳐졌다고 하니까 그 때 사용하심이....

    Kylix랑 Delphi6에 Winshoes Component가 기본적으로 설치된다고 하는데

    확실히 나와 봐야 알겠지여.....

  • Profile
    이경문 2000.08.18 00:06
    UDPWinshoe Unit의 230행을 보면 다음과 같은 코드가 있습니다.

    if fthrdListener <> nil then begin

    // Is Free on Terminate - dont free thread.

    fthrdListener.TerminateAndWaitFor;



    이것을 다음과 같이 고쳐 주십시오.

    if fthrdListener <> nil then begin

    // Is Free on Terminate - dont free thread.

    if not fthrdListener.Terminated then

    fthrdListener.TerminateAndWaitFor;



    소스를 보고 임의적으로 고친 것입니다.

    Active := true에서 Active := false로 할 때 이미 Terminated된 쓰레드를

    또 다시 Terminatet시키는 데서 에러가 발생하더군요.

    암튼 Winshoe 8을 기대해 봅시다