Winsock通信编程

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

实验报告课程名称:计算机网络结构指导老师:吴建德成绩:实验名称:Winsock通信编程实验类型:上机实验同组学生姓名:一、实验目的和要求(必填)二、实验内容和原理(必填)三、主要仪器设备(必填)四、操作方法和实验步骤五、实验数据记录和处理六、实验结果与分析(必填)七、讨论、心得一、实验目的和要求1、学习VisualBasic的Winsock控件的使用方法;2、了解TCP/UDP的通信过程;3、进一步理解通信分层控制的优点;二、实验内容和原理1、将两台PC机通过以太网连接到同一局域网,用测试软件测试以太网通信是否正常。2、编写一个简单通信程序,在两台PC上同时运行,要求在一台PC上输入字符,按确认键后能在另一台PC上显示。3、编写两个通信程序(服务器程序和客户机程序),要求:(1)客户机与服务器通过TCP连接后,在其中一台主机上输入字符,按回车键后将所有字符发送到另一台主机并显示;(2)实验2的文件传输方法改为通过UDP传输,其余要求不变。三、主要实验设备电脑一台,串口线一根四、实验数据记录和处理专业:电子信息工程姓名:学号:309日期:2012年地点:应电楼305实验程序代码如下:1.TCP:frmclientPrivateSubForm_Load()'Winsock控件的名字为tcpClient。'注意:要指定远程主机,可以使用'IP地址(例如:121.111.1.1),也可以使用'计算机的“好听的名字”如下所示。tcpClient.RemoteHost=127.0.0.1tcpClient.RemotePort=1002EndSubPrivateSubcmdConnect_Click()'调用Connect方法,初始化连接。tcpClient.ConnectEndSubPrivateSubtxtSendData_Change()tcpClient.SendDatatxtSend.TextEndSubPrivateSubtcpClient_DataArrival_(ByValbytesTotalAsLong)DimstrDataAsStringtcpClient.GetDatastrDatatxtOutput.Text=strDataEndSubPrivateSubtxtSend_Change()tcpClient.SendDatatxtSend.TextEndSubfrmserverPrivateSubForm_Load()'将LocalPort属性设置为一个整数。'然后调用Listen方法。tcpServer.LocalPort=1002tcpServer.ListenfrmClient.Show'显示客户端的窗体。EndSubPrivateSubtcpServer_ConnectionRequest(ByValrequestIDAsLong)'检查控件的State属性是否为关闭的。'如果不是,'在接受新的连接之前先关闭此连接。IftcpServer.StatesckClosedThentcpServer.Close'接受具有requestID参数的'连接。tcpServer.AcceptrequestIDEndSubPrivateSubtxtSendData_Change()'名为txtSendData的TextBox控件中'包含了要发送的数据。当用户往文本框中'键入数据时,使用SendData方法'发送输入的字符串。tcpServer.SendDatatxtSendData.TextEndSubPrivateSubtcpServer_DataArrival_(ByValbytesTotalAsLong)'为进入的数据声明一个变量。'调用GetData方法,并将数据赋予名为txtOutput'的TextBox的Text属性。DimstrDataAsStringtcpServer.GetDatastrDatatxtOutput.Text=strDataEndSub2.UDPpeerAPrivateSubForm_Load()'控件的名字为udpPeerAWithudpPeerA'重点:必须将RemoteHost的值'修改为计算机的名字。.RemoteHost=127.0.0.1.RemotePort=1001'连接的端口号。.Bind1002'绑定到本地的端口。EndWithfrmPeerB.Show'显示第二个窗体。EndSubPrivateSubtxtSend_Change()'在键入文本时,立即将其发送出去。udpPeerA.SendDatatxtSend.TextEndSubPrivateSubudpPeerA_DataArrival_(ByValbytesTotalAsLong)DimstrDataAsStringudpPeerA.GetDatastrDatatxtOutput.Text=strDataEndSubPEERBPrivateSubForm_Load()'控件的名字为udpPeerB。WithudpPeerB'重点:必须将RemoteHost的值改为'计算机的名字。.RemoteHost=127.0.0.1.RemotePort=1002'要连接的端口。.Bind1001'绑定到本地的端口上。EndWithEndSubPrivateSubtxtSend_Change()'在键入后立即发送文本。udpPeerB.SendDatatxtSend.TextEndSubPrivateSubudpPeerB_DataArrival_(ByValbytesTotalAsLong)DimstrDataAsStringudpPeerB.GetDatastrDatatxtOutput.Text=strDataEndSub五、实验结果与分析设置图片如下:TCPUDP:六、心得体会1.使用VB进行编程,更进一步了解了在VB内进行工程项目制作的一般流程。2.了解了Winsock,并通过帮助文件实现功能。3.刚开始时只能单向收发,经查证是另一端send程序没写,补充后成功。4.对VB语法有了进一步的熟悉,了解了指令运作的方式和程序编写的方式

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功