欢迎来到天天文库
浏览记录
ID:37738667
大小:74.00 KB
页数:14页
时间:2019-05-30
《基于 WinSock 2 编写简单的客户服务器程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、“基于WinSock2编写简单的客户/服务器程序”一、实验目的1)掌握基于WinSock2的网络通信编程。2)通过编写一个简单的TCP应用程序和一个简单的UDP应用程序,加深对客户/服务器网络交互模型的理解。二、实验环境1)计算机两台(已安装WindowsXP操作系统和VisualC++6.0集成开发环境)。2)交换机一台(例如华为QuidwayS3528P-EA或者联想iSpirit2924G)。3)平行双绞线网线若干。三、实验内容建立工程,设置VisualC++6.0的WinSock2网络开发环境:1)进入“File”→“New”→“Projects”选项卡,选择“Win32Co
2、nsoleApplication”,在“Projectname”栏中添加工程名,在“Location”栏目设置好工程存放位置后,按“OK”,在弹出窗口中选择“Anemptyproject”,按“Finish”、“OK”后,便建立了一项新的工程。2)再进入“File”→“New”→“Files”选项卡,选择“C++SourceFile”,在“File”栏中添加文件名,后缀为.cpp,在“Location”栏目设置好.cpp源文件存放位置后,按“OK”,便将该.cpp源文件添加到工程中。3)再进入“Project”→“Settings…”→“Link”选项卡下的“Object/libra
3、ryModules”中,添加静态链接函数库ws2_32.lib,WinSock2网络开发环境设置完毕。1编写一个简单的TCP应用程序客户端#include #include voidmain() { WORDwVersionRequested; WSADATAwsaData; interr; wVersionRequested=MAKEWORD(1,1); err=WSAStartup(wVersionRequested,&wsaData); if(err!=0){ return; } if(LOBYT
4、E(wsaData.wVersion)!=1
5、
6、 HIBYTE(wsaData.wVersion)!=1){ WSACleanup(); return; } SOCKETsockClient=socket(AF_INET,SOCK_STREAM,0); SOCKADDR_INaddrSrv; addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1"); addrSrv.sin_family=AF_INET; addrSrv.sin_port=htons(6000); connect(sockClient,(S
7、OCKADDR*)&addrSrv,sizeof(SOCKADDR)); charrecvBuf[100]; recv(sockClient,recvBuf,100,0); printf("%s",recvBuf); send(sockClient,"thisislisi",strlen("thisislisi")+1,0); closesocket(sockClient); WSACleanup(); } #include//socket程序需要的头文件。#includeintmain(){/*******
8、******以下这段代码是复制的MSDN中的WSAStartup下的代码********************/WORDwVersionRequested;WSADATAwsaData;interr;wVersionRequested=MAKEWORD(1,1);err=WSAStartup(wVersionRequested,&wsaData);if(err!=0){return1;}if(LOBYTE(wsaData.wVersion)!=1
9、
10、HIBYTE(wsaData.wVersion)!=1){WSACleanup();return2;}/*************以下
11、这段代码是复制的MSDN中的WSAStartup下的代码********************//*socket第一参数是一个地址簇,对于TCP/IP协议的套接字,它只能是AF_INET也可以写成PF_INET。第二参数指定socket类型,对于1.1版本的socket,它只支持两种类型的套接字,SOCK_STREAM指定产生流式套接字,SOCK_DGRAM产生数据报套接字。第三个参数是月特定的地址家族簇相关的协议,如果指定为0,那么它就会根据地址格式和
此文档下载收益归作者所有