ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:863.14KB ,
资源ID:17796419      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17796419.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(VB语言对UDP聊天系统设计Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

VB语言对UDP聊天系统设计Word文档格式.docx

1、mondialog2.2 winsock控件的介绍1.Winsck控件的主要属性属性名说明BytesReceived返回接收的数据,可以用GetData方法来获取它LocalHostName返回本机名LocalIP返回本机IPLocalPort返回或设置本机所用的端口,如果为0则为随机产生Protocol返回通信所用的协议RemoteHostName返回通信对方的计算机名RemoteHostIP返回通信对方的IPState返回Winscok的当前状态,取值如下 sckClosed(常量为0):关闭状态 sckOpen(常量为1):打开状态 sckListening(常量为2):侦听状态 sck

2、ConnectionPending(常量为3):连接状态 sckResolvingHost(常量为4):解析主机中 sckHostResolved(常量为5):已解析主机 sckConnecting(常量为6):正在连接 sckConnected(常量为7):已经连接 sckClosing(常量为8):客户端正在关闭 sckError(常量为9):连接发生错误 2.Winsock的主要方法:方法名作用listen使服务器程序处于侦听状态,等待客户端的连接请求connect用于客户端向远程发送一个连接请求,语法:Winsock.connect IP,PortAccept用于服务器接收一个远程客户

3、端的连接请求,语法:Winsock.Accept requestIDsendData用于向远程发送数据,语法:Winsock.sendData 数据getData用于接收远程发送来的数据,语法:Winsock.getData 变量Close关闭通信3.Winsock的主要事件:事件名Connect当服务器接收客户端请求时,服务端发生的事件DataArrival有数据到达时发生的事件,可以在这个事件中来getData发送来的数据ConnectionRequest客户端用Connect方法时服务器发生的事件,可以在这个事件中来Accept一个连接请求SendProgress发送数据中发生的事件,可

4、以在这个事件中来标示当前已经发送多少数据SendComplete发送数据完成发生的事件Error通信发生错误时发生的事件关闭通信时发生的事件第三章 实验实验步骤和主要是想3.1实验步骤如何选用适用的协议当您准备开始使用Winsock控件之前,首要的工作是如何选择适用的协议类型。如同先前所述的,您可以选择TCP 协议或是UDP协议中的一种。但是这两种协议的差异点在哪里呢?虽然,它们同样可以使用在Internet或是Internet环境之中,但是主要的差异在于连接的状态。以下是这两种协议的特点说明:TCP协议是属于面向连接的协议。所谓的面向连接协议是指“在您可以交换数据之前,在两个终端设备之间必须

5、连接成功”。同时,在网络的基础理论之中,都会特别强调TCP具有错误核对的功能。也就是说,在数据的传送过程中,如果发生错误或是数据无法传达对方时,TCP协议将会重复尝试着重新传送数据。因此,核对以及重新传送的能力,因此起传输效率会比Internet协议或是巨域网络协议差一些(netBIEUI、IPX、AppleTalk)。UDP协议是属于无面向连接协议。这种协议为适用在两个设备之间,适用于信息传送以及数据的传输方面。但是在使用时,必须注意当你将信息送出时,对方可能已经离线,因而无法接收到数据,而您也无法实时察觉到对方已经离线。此外,使用UDP协议的最大数据传送量,完全取决于网络的传输量。因此,此

6、种协议较为适用于局域网络。因此,当您在建立应用程序并且选用适当的协议之前,务必先依据应用程序使用的环境来选择适用的协议。UDP连接的基础在 建立UDP的应用程序时,其过程会比TCP协议简单许多。这是由于UDP协议在数据传送之前,可以不需要特别明确的连接方式。但是,在上述的TCP连接方式之中,Winsocke控件必须设置在“监听(Linsten)”状态之下,同时在客户端准备与主机进行连接时,主机端也必须要使用Accept方法来允许客户端所要求的连接。反观在UDP协议方面,双方仅仅需要使用Bind方法,即可与对方连接并且传输数九,因此,UDP协议连接过程的处理方式确实比TCP简单许多。下面介绍使用

7、UDP协议来传送信息的过程。Winsock控件的作用简单说就是可以用于两台或多台机器间通信,这里不多说这个控件的作用了,因为在以后的介绍中我们会了解到这个控件的强大功能的,如可以用来做聊天软件等废话不多说,来看看他有些什么重要的属性、方法和事件吧!在VB6.0中的工具箱里默认情况下是没有这个控件的,添加方法如下:在工具箱上右击,选择部件,然后在部件对话框中选择Microsoft Winsock Control 6.0,后确定即可。如果没有这个复选框的话,请点击浏览按钮后在打开的添加ActiveX控件对话框选择MSWINSCK.ocx后选择打开,再点确定即可。第四章 实验模块设计及功能4.1数据

8、库的使用 数据库的还原及备份: 1.新建数据库: 新建数据库:命名为“yonghu” 打开数据库的表:新建表命名为“yonghu” 如图:写入一行内容方便写程序4.2 UDP模块设计4.2.1实验设计主要是想 当本机登录聊天模块时,怎么知道远程计算机是否在线!(1)、应用端口号来判断就是winsock绑定端口,然后发送信息给对方,对方通过发过来的信息的远程端口号,判断该执行那些命令,然后让软件自动的发送文件给对方!比如登录界面绑定个winsock端口,登录时像整个局域网发送信息,对方接受登录发来的信息,告诉自己上线机子,同时判断发送过来的远程端口,如果端口是登录发来信息的端口,那么就自动回馈个

9、信息各对方告诉他我也在线!(2)、应用数据库来判断: 在数据库中建立表格两行,第一列为默认用户名“xxx”,第二列为“ip地址”。当自己上线时,向局域网广播自己的ip地址及用户名,本机将在数据库中添加本机ip地址,默认用户名“xxx”,当登录之后会定时向局域网广播自己的ip地址(时间为1ms)。远程计算机进行判断,第一次广播在线后,远程计算机将在数据库中添加本机的ip地址,本机第二次广播后,远程计算机将收到的ip地址与数据库中的内容进行比较,存在跳出sub,不再多次显示在线,不存在显示一次并保持与存入数据库。到本机下线时,远程计算机将删除数据库中的本机ip地址,而本机将删除所有ip地址。4.2

10、.2实验方案一模块设计图1.实验方案一(应用端口号的模块)(1)、登录模块图(2)、发送接受模块图(3)、提示模块图2实验方案二(应用数据库的模块) (2)、登录后的窗体 (3)、发送接受模块图总结 经过几天的学习,研究和开发,我们小组选择的课题基本完成。其功能基本符合网络实训的要求,能够查询课程,添加课程,修改课程等。虽然由于自己知识上的不足,有些地方有少许错误和容错性能比较低,功能还不够完善,但是还是可以基本完成课程开设系统应有的功能。 在实训过程我会到了许多知识,这也是在大学里第一次比较完整的完成一个小项目,虽然过程中遇到了许多困难,在同学和老师的帮助下一一克服了。通过不断的发现问题,总

11、结问题和解决问题的过程,使我在此次实训设计活动中不断的提高,和得到了宝贵的经验。参考文献1、 刘兵. 计算机网络概论. 中国水利水电出版社2、 何玉洁 麦中凡. 数据库原理及应用. 人民邮电出版社3、 龚沛曾 杨志强 陆慰民. Visual Basic程序设计教程. 高等教育出版社4、 明日科技 高春艳 李俊民 刘斌斌. Visual Basic程序开发范例宝典. 人民邮电出版社致谢这是我们的第最后一次参加实训了,但这门课程实训给我们提供了许多在今后的工作,提供了很好的基础。所以我很感谢学校对我们的重视,给我了这次实训的机会和良好的实训环境。在这次实训中,我们小组在组长的带领下,积极工作,各尽

12、所能,顺利的完成了实训任务。在这里,对其他同学的努力,也是不得不提的,大家都是在自己负责的部分,兢兢业业,非常认真。所以,我们才能得到最后的成功。一个星期的时间很快过去了,虽然董老师为了我们能够更充分的准备给了我们一个月的时间去准备,但是我们一直都是看资料准备,真正动手去做是在这短短的一个星期的时间。在这次实训的整个完成过程中,我们过的非常充实和有收获,组长带着我们从看教学视频了解UDP和数据库到看例子了解实践去做,虽然系统并不是非常的完满,但是让我们了解了的知识是丰富的。在此一定要感谢董老师,是他对我们的严格要求锻炼了我们自己去动手去尝试,解决问题的能力,让我们获益匪浅。只有自己动手试出来的

13、,才真正是自己的。我们的组员也非常团结,认真对待组长分给我们的任务,我们也从中懂得了团队精神的重要性。很快我们就要大四了,这个学期的实训可能将是我们大学四年的最后一次实训,我们相当重视、珍惜这次机会,而这次实训的结果将是我们今后我们工作、学习中遇到新的、不会的问题可以从容不迫的面对的一个重要基石,促进我们不断前进。附录方案一代码(应用端口号)(1)、登录模块代码Private Sub Command1_Click()Dim data As StringDim s As Stringdata = 用户: + Text1.Text + IP: + Me.Winsock1.LocalIPMe.Win

14、sock1.RemoteHost = 172.16.255.255Me.Winsock1.RemotePort = 4601Me.Winsock1.SendData dataMe.Winsock1.RemotePort = 4700s = Text1.Text127.0.0.1Me.Winsock1.SendData sMe.HideForm1.ShowEnd SubPrivate Sub Command2_Click()Dim data1 As StringDim d As Stringd = Text1data1 = + Text1 + + Me.Winsock1.LocalIP + 我下

15、线了!Me.Winsock1.SendData data1Me.Winsock1.SendData dUnload Form1Unload Form2Unload Form4Private Sub Form_Load()Me.Winsock1.Protocol = sckUDPProtocolMe.Winsock1.Bind 4601Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)Dim x As StringDim data3 As StringDim data4 As StringMe.Winsock1.GetData x

16、Text2 = Me.Winsock1.RemotePortText3 = xIf Text2 = 4601 ThenIf Me.Winsock1.LocalIP = Me.Winsock1.RemoteHostIP Thenc = Me.Winsock1.RemoteHostIPdata4 = + c + Me.Winsock1.SendData data3End IfIf Me.Winsock1.RemoteHostIP Me.Winsock1.LocalIP Thendata3 = (2)、发送接受模块Form1.HideForm2.ShowDim data2 As StringDim

17、b As StringDim e As StringIf Text3 = ThenForm4.ShowIf Text3 e = Text3.Textdata2 = Text2.Textdata = data2 + : + vbCrLf + Text1.Text + e + Text4 = Text4 + Text2 + + vbCrLf + Text1 + vbCrLf + CStr(Now() + vbCrLfText4.SelStart = Len(Text4.Text)Text1.Text = clrPrivate Sub Command3_Click()If Text7 = Commo

18、nDialog1.Action = 3Text4.ForeColor = CommonDialog1.ColorElseIf Text7 = 1 ThenText2.ForeColor = CommonDialog1.ColorElseIf Text7 = 2 ThenText3.ForeColor = CommonDialog1.ColorElseIf Text7 = 3 ThenElseIf Text7 = 4 ThenText1.ForeColor = CommonDialog1.ColorElseIf Text7 = 5 ThenText6.ForeColor = CommonDial

19、og1.ColorPrivate Sub Command4_Click()If Text8 = CommonDialog1.Flags = cdlCFBoth Or cdlCFEffectsCommonDialog1.Action = 4Text4.FontSize = CommonDialog1.FontSizeText4.FontBold = CommonDialog1.FontBoldText4.FontItalic = CommonDialog1.FontItalicText4.FontStrikethru = CommonDialog1.FontStrikethruText4.Fon

20、tUnderline = CommonDialog1.FontUnderlineElseIf Text8 = 1 ThenText2.FontSize = CommonDialog1.FontSizeText2.FontBold = CommonDialog1.FontBoldText2.FontItalic = CommonDialog1.FontItalicText2.FontStrikethru = CommonDialog1.FontStrikethruText2.FontUnderline = CommonDialog1.FontUnderlineElseIf Text8 = 2 T

21、henText3.FontSize = CommonDialog1.FontSizeText3.FontBold = CommonDialog1.FontBoldText3.FontItalic = CommonDialog1.FontItalicText3.FontStrikethru = CommonDialog1.FontStrikethruText3.FontUnderline = CommonDialog1.FontUnderlineElseIf Text8 = 3 ThenElseIf Text8 = 4 ThenText1.FontSize = CommonDialog1.Fon

22、tSizeText1.FontBold = CommonDialog1.FontBoldText1.FontItalic = CommonDialog1.FontItalicText1.FontStrikethru = CommonDialog1.FontStrikethruText1.FontUnderline = CommonDialog1.FontUnderlineElseIf Text8 = 5 ThenText6.FontSize = CommonDialog1.FontSizeText6.FontBold = CommonDialog1.FontBoldText6.FontItalic = CommonDialog1.FontItalicText6.FontStrikethru = CommonDialog1.FontStrikethruText6.FontUnderline = CommonDialog1.FontUnderlineMe.Winsock1.Bind 4700Text4.Locked = TrueText6.Locked = True

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1