VB环境下的winsock编程.docVIP

  • 6
  • 0
  • 约4.06千字
  • 约 7页
  • 2017-02-28 发布于湖北
  • 举报
VB环境下的winsock编程 摘要: Socket原意为“插座”,用于计算机通信则代表一种点到点信息传输。早期用于Unix系统上的通信编程规范,通信双方由代表两点的“服务器”和“客户”组成,基于IP协议进行按照TCP或UDP规范进行信息交换。建立双方通信的过程即称建立一个“套接字(Socket)”,建立后利用得到的“套接字”进行各种信息的交流。客户机/服务器模式客户机一方,TCP/IP应用程序功能如下:1) 打开通信信道(申请一套接字),并连接到服务器在主机的保留端口,该端口对应服务器的TCP/IP进程。2) 向服务器发出请求报文,等待接收应答。3) 从服务器方收到最终应答结果,或在不再请求时关闭信道并终止客户机进程。 服务器一方,TCP/IP应用程序动作如下:1) 打开通信信道(申请一套接字),通知本地主机在某一保留端口接收客户机请求。2) 等待客户请求到达指定端口。3) 接收到请求,启动一新进程处理用户请求,同时释放旧进程以响应新的客户请求,一旦服务完成,关闭新进程与客户的通信链路。4) 继续等待客户机请求。5) 如果不想响应客户机请求,关闭服务器进程。  TCP/IP应用中的服务器程序必须先于客户机进程启动,直到对客户机的响应结束或强迫终止。 在运行的时候它是一个不可见的控件,它提供了一个简单的途径访问TCP及UDP网络服务而无需了解底层细节棗你只需设置属性、在恰当的时候调用它提供的方法即可协议的选择WinSock控件能够通过UDP协议(用户数据报协议)或TCP协议(数据传输协议)连接到远程的机器并进行数据交换。这两种协议都能用来创建客户端和服务端应用程序。当我们使用WinSock控件时,首先要确定的是使用TCP还是UDP协议。它们之间主要的区别在于连接状态TCP协议控件是一个基于连接的协议,就像电话机一样,用户必须在通话之前建立连接;UDP是一个无连接的协议,两台计算机之间的事务处理就像传纸条一样:一台计算机向另一台计算机发送消息,但是它们之间并没有一个明确的连接路径。要创建的应用程序的类别决定了要选择的协议。当发送或接收数据时,应用程序需要从服务端或客户端获得认证的话, TCP协议就正好需要在发送或接受数据前建立明确的连接。要发送的数据量大(就像图片、声音文件之类)一旦建立了连接,TCP协议就会保持连接并保证数据的完整性。但是,这种连接会占用的更多的处理器资源,成本也会更高一些。数据是陆续传输的选择UDP协议会更合适一些。UDP协议也更适合于发送小量数据。TCP连接当用TCP控件创建应用程序的时候,必须首先明确你的程序是作为服务端还是客户端。创建服务端程序就意味着你的程序能够在指定的端口进行“监听”,而客户端则能够提出请求,服务端能够接受请求并实现连接。一旦连接建立起来,客户端和服务端就能够自由地进行通信。 服务端程序 创建一个简单服务端程序的步骤: 创建一个标准EXE工程;把默认窗体(Default form)的名字改为frmServer;把form的标题(caption)改为TCP Server;把Winsock控件拉到窗体中,并命名为tcpServer;在窗体中添加2个文本框,分别命名为txtSendData和txtOutput‘ 在窗体中加入下列代码;  Private Sub Form_Load()tcpServer.LocalPort = 1001 tcpServer.Listen frmClient.Show End Sub Private Sub tcpServer_ConnectionRequest (ByVal requestID As Long) If tcpServer.State sckClosed Then tcpServer.Close tcpServer.Accept requestID End Sub Private Sub txtSendData_Change() tcpServer.SendData txtSendData.Text End Sub Private Sub tcpServer_DataArrival (ByVal bytesTotal As Long) Dim strData As String tcpServer.GetData strData txtOutput.Text = strData End Sub TCP客户端程序 在工程中添加一个新的窗体(form),并命名为frmClient;将窗体的标题(caption)改为TCP Client;添加一个Windsock控件到窗体中,命名为tcpCllient;添加2个文本框控件到frmClient窗体,分别命名为txtSend和txtO

文档评论(0)

1亿VIP精品文档

相关文档