Q&A

  • 인디 컴포넌트 서버쪽에서 질문...(원초적 초보)
클라이언트에서 메시지를 보내는거는 되던데

서버 쪽에서도 메시지를 보낼라구 하거덩여

근데 아래와 같이 하면



procedure TForm1.Button1Click(Sender: TObject);

var

AClient: TIdPeerThread;

begin

AClient := TIdPeerThread.Create;

try

AClient.Connection.Binding.IP := 클라이언트 IP;

AClient.Connection.Binding.Port := 6000;

AClient.Connection.WriteLn('TEST');

finally

AClient.free;

end;

end;



Access violation at address 0044DC85..... 이런 에러 메시지가 나타나는데

어떻게 처리를 해줘야 하나여.......

고수님덜의 빠른 답변 부탁드립니다.

총총총.......

1  COMMENTS
  • Profile
    이경문 2000.12.21 09:14
    서버소켓에서는 클라이언트소켓이 있는 곳으로 접속할 수 없습니다.

    TIdPeerThread는 클라이언트소켓에서 서버소켓으로 접속이 되었을 때 Indy에서 생성하는 클래스이지 사용자가 임으로 생성할 수 없는 클래스입니다.



    초보초보 wrote:

    > 클라이언트에서 메시지를 보내는거는 되던데

    > 서버 쪽에서도 메시지를 보낼라구 하거덩여

    > 근데 아래와 같이 하면

    >

    > procedure TForm1.Button1Click(Sender: TObject);

    > var

    > AClient: TIdPeerThread;

    > begin

    > AClient := TIdPeerThread.Create;

    > try

    > AClient.Connection.Binding.IP := 클라이언트 IP;

    > AClient.Connection.Binding.Port := 6000;

    > AClient.Connection.WriteLn('TEST');

    > finally

    > AClient.free;

    > end;

    > end;

    >

    > Access violation at address 0044DC85..... 이런 에러 메시지가 나타나는데

    > 어떻게 처리를 해줘야 하나여.......

    > 고수님덜의 빠른 답변 부탁드립니다.

    > 총총총.......