#include
#pragma comment(lib,"ws2_32.lib")
main()
{
FILE * fp;
WSADATA wd;
int retval;
SOCKET sock=socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP);
struct sockaddr_in saddr;
BOOL bConditionalAccept=TRUE;
struct sockaddr_in saddrsrv;
char heading[3];
char buffer[5000];
int size;
fp=fopen(".\\record.txt","a+");
if((WSAStartup(MAKEWORd(1,1),&wd))==SOCKET_ERROR)
{
printf("Error occured when loading the WINSOCK_DLL...");
exit(-1);
}
WSAStartup(MAKEWORd(2,2),&wd);
saddrsrv.sin_family=AF_INET;
saddrsrv.sin_addr.s_addr=INADDR_BROADCAST;
saddrsrv.sin_port=htons(5050);
setsockopt(sock,SOL_SOCKET,SO_BROADCAST,(char FAR *)&bConditionalAccept,sizeof(BOOL));
saddr.sin_family=AF_INET;
saddr.sin_port=htons(5050);
saddr.sin_addr.S_un.S_addr=0;
bind(sock,(struct sockaddr *)&saddr,sizeof(saddr));
size=sizeof(saddrsrv);
for(;;)
{
retval=recvfrom(sock,buffer,sizeof(buffer),0,(struct sockaddr *)&saddrsrv,&size);
if(retval==SOCKET_ERROR)
{
continue;
}
fprintf(fp,"%s",buffer);
printf("%s",buffer);
}
}