|
Udp 소켓을 통해서 통신을 하는데요
이상하게 TUdpSocket 을 사용하게 되면
UdpSocket1Receive 이벤트에서 서버측에서 보낸값을 받아야 되는데
받아지지않네요
클라이언트 측은
보낼때
UdpSocket1->RemoteHost="서버측 아이피";
UdpSocket1->RemotePort=9000;
UdpSocket1->LocalHost = UdpSocket1->LocalHostName();
UdpSocket1->LocalPort=1532;
UdpSocket1->Open();
UdpSocket1->Sendln("zzz");
서버측 코드는
-.......
cliLen = sizeof(cliAddr);
n = recvfrom(sd, msg, MAX_MSG, 0,(struct sockaddr *) &cliAddr, &cliLen);
sendto(sd,"yes",3, 0, (struct sockaddr *)&cliAddr, cliLen);
if(n<0) {
printf("%s: cannot receive data \n",argv[0]);
continue;
}
....
클라이언트에서 "zzz" 를 보내게 되면 서버측에서는 "zzz" 를 받아서 출력은 되는데요
다시 클라이언트로 "yes" 란 문자를 보내게 되는데요 클라이언트측의 UdpSocket1Receive 이벤트에서
받아야 되는데 받지를 못하던데요..
제가 잘못하고 있는것 같은데요
TUdpSocket 을 사용하면 데이타를 받을때
UdpSocket1Receive 에서 데이타가 받아지는것 맞죠..
죄송하지만 좀 자세한 설명좀 부탁좀드릴께요
|