|
|
Posted on
2009-08-04 11:20
方恨少
阅读( 2318)
评论()
收藏
举报
- //services
- #pragma comment (lib,"ws2_32.lib")
-
- #include <Winsock2.h>
-
- #include <stdio.h>
-
-
-
- void main()
-
- {
-
-
-
- WORD wVersionRequested;
-
- WSADATA wsaData;
-
- int err;
-
-
-
- wVersionRequested = MAKEWORD( 1, 1 );
-
-
-
- err = WSAStartup( wVersionRequested, &wsaData );
-
- if ( err != 0 ) {
-
-
-
-
-
- return;
-
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- if ( LOBYTE( wsaData.wVersion ) != 1 ||
-
- HIBYTE( wsaData.wVersion ) != 1) {
-
-
-
-
-
- WSACleanup( );
-
- return;
-
- }
-
-
-
-
-
-
-
- SOCKET svr = socket(AF_INET,SOCK_DGRAM,0);
-
-
-
- SOCKADDR_IN addr;
-
- addr.sin_family = AF_INET;
-
- addr.sin_port = htons(6000);
-
- addr.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
-
- int len = sizeof(sockaddr);
-
- bind(svr,(sockaddr*)&addr,len);
-
-
-
- SOCKADDR_IN addrClient;
-
- char recvBuf[128];
-
- char sendBuf[128];
-
- char tempBuf[256];
-
-
-
- while(true)
-
- {
-
-
-
- recvfrom(svr,recvBuf,128,0,(sockaddr*)&addrClient,&len);
-
- char* ipClient = inet_ntoa(addrClient.sin_addr);
-
- sprintf(tempBuf,"%s said: %s\n",ipClient,recvBuf);
-
- printf("%s",tempBuf);
-
- gets(sendBuf);
-
-
-
- sendto(svr,sendBuf,strlen(sendBuf)+1,0,(sockaddr*)&addrClient,len);
-
- }
-
- closesocket(svr);
-
- WSACleanup();
-
- }
- //client
- #pragma comment (lib,"ws2_32.lib")
-
- #include <Winsock2.h>
-
- #include <stdio.h>
-
-
-
- void main()
-
- {
-
-
-
- WORD wVersionRequested;
-
- WSADATA wsaData;
-
- int err;
-
-
-
- wVersionRequested = MAKEWORD( 1, 1 );
-
-
-
- err = WSAStartup( wVersionRequested, &wsaData );
-
- if ( err != 0 ) {
-
-
-
-
-
- return;
-
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- if ( LOBYTE( wsaData.wVersion ) != 1 ||
-
- HIBYTE( wsaData.wVersion ) != 1 ) {
-
-
-
-
-
- WSACleanup( );
-
- return;
-
- }
-
-
-
-
-
-
-
- SOCKET Svr = socket(AF_INET,SOCK_DGRAM,0);
-
-
-
- SOCKADDR_IN addrSvr;
-
- addrSvr.sin_family = AF_INET;
-
- addrSvr.sin_port = htons(6000);
-
- addrSvr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
-
- char recvBuf[128];
-
- char sendBuf[128];
-
- int len = sizeof(sockaddr);
-
-
-
- while(true)
-
- {
-
- gets(sendBuf);
-
-
-
- sendto(Svr,sendBuf,strlen(sendBuf)+1,0,(sockaddr*)&addrSvr,len);
-
-
-
- recvfrom(Svr,recvBuf,128,0,(sockaddr*)&addrSvr,&len);
-
- char* ipSvr = inet_ntoa(addrSvr.sin_addr);
-
- printf("%s said: %s\n",ipSvr,recvBuf);
-
- }
-
- closesocket(Svr);
-
- WSACleanup();
-
- }
|