学院首页 软件应用 编程开发 创意设计 认证培训 软件论坛
ASP ASP.NET PHP JSP SQL MYSQL Java VB

您的位置:学院 >> 编程开发 >> VB >> 用Visual Basic实现点对点通讯


用Visual Basic实现点对点通讯


  使用TCP协议时,如果需要创建一个客户应用程序,就必须识别服务器的名称或IP地址。应用程序的通信端口随时都将仔细监测对方发出的消息,这是系统进行可靠连接的保证。一旦连接发生,任何一方都可以通过SendData发送和接收数据,并借助GetData把自己的数据分离出来。传送数据时,需要先设定客户机的LocalPort属性,服务器则只需要把RemoteHost属性设定为客户机以太网的地址,并设定与客户机LocalPort属性相同的端口地址,借助SendData方法开始发送消息。客户机则在GetData事件中通过DataArrival事件分离出发送的信息。一个Winsock控件可以让本地计算机连接到远程的计算机上,同时使用UDP或TCP协议,两个协议都能创建客户机和服务器应用。

  使用Winsock控件时,通信的双方需要选定相同的协议。TCP协议适用于传送大容量、需要安全性保证的数据文件,而UDP协议适用于需要分别与很多下属通信,或者建立的连接比较多且为时变的情况,特别是在数据量很小的时候。设定时可以使用Winsock1.Protocol =sckTCPProtocol方法,首先要找到你的计算机的名称,并把它添入Winsock的LocalHost属性中。

  创建一个应用程序时,首先要确定你建立的是客户方应用还是服务器服务,只有建立的服务器应用开始工作,并进入监听状态时,客户应用程序才开始建立连接,进入正常的通信状态。笔者建立了一个应用程序,它的功能是当客户方的鼠标移动时,服务器应用程序上能够实时显示该鼠标的位置。

  下面是建立服务器应用的方法:

  1.创建一个新的标准EXE文件;

  2.加入一个Winsock控件;

  3.加入如下代码:

  Private Sub Form Load()

   tcpServer.LocalPort = 1001

   tcpServer.Localhost = "servser"

   tcpServer.remotePort = 1002

   tcpServer.Localhost = "klint"

   tcpServer.Listen

  End Sub

  ′连接检查

  Private Sub tcpServer ConnectionRequest(ByVal requestID As Long)

   If tcpServer.State <> sckClosed Then

  tcpServer.Close

  tcpServer.Accept requestID

  End Sub

  ′发送数据

  Private Sub frmserver monsemove(x,y)

   tcpServer.SendData "x"&str(x)

   tcpServer.SendData "y"&str(y)

  End Sub

  建立客户应用的方法为:

  1.创建一个新的标准EXE文件;

  2.加入一个Winsock控件;

  3.加入两个Text框——txtx和txty;

  4.加入如下代码:

 Private Sub Form Load()
  tcpServer.LocalPort = 1002
  tcpServer.Localhost = "klint"
  tcpServer.remotePort = 1001
  tcpServer.Localhost = "servser"
  tcpServer.Listen
 End Sub

 '连接检查

 Private Sub tcpklint ConnectionRequest
  (ByVal requestID As Long)
  If tcpklint.State <> sckClosed Then
   tcpklint.Close
   tcpklint.Accept requestID
 End Sub

  接收数据

 Private Sub tcpClient DataArrival
  (ByVal bytesTotal As Long)
  Dim strData As String
  tcpklint.GetData strData
  if left(strData,1)="X"then
   txt x.Text = strData
  else
   txt y.Text = strData
  endif
 End Sub

  以上例程实现的是一个非常简单的点对点通信,在此基础上略加改造,可以形成功能复杂的实时计算机网络A-A交互通信系统,用于控制、图形仿真等。VB中Winsock给我们提供了一种简便的数据传送方法,使我们得以轻松地实现网络点对点通信。
技术文章快速查找

栏目导航
软件应用
·操作系统 ·杀毒防黑 ·应用软件
·聊天软件 ·网络软件  
Web开发
·ASP ·JavaScript ·CGI
·JSP ·VbScript ·Web服务器
·PHP ·XML  
开发语言
·VB ·VC ·ASP.NET
·Java ·C/C++ ·Delphi
数据库开发
·MySQL ·SQL/Access ·PowerBuilder
·Oracle ·DB2  
网站设计
·Flash ·Dreamweaver ·HTML/CSS
·Fireworks ·FrontPage  
平面设计
·Photoshop ·CorelDraw ·AutoCAD
·FreeHand ·Illustrator ·3DsMAX
媒体动画
·Director ·Authorware ·Maya
·视频处理    


相关软件 产品库推荐
·笔记本 ·台式机 ·服务器
·数码相机 ·手机 ·GPS
·DV摄像机 ·MP3 ·MP4
·CPU ·硬盘 ·内存
·主板 ·显卡 ·显示器
·打印机 ·投影机 ·路由器

谢谢了...
游客 发表于2008-4-16 9:56:26
对"用Visual Basic实现点对点通讯"的评论 - 快速回贴
内容:
  [完成后可按Ctrl+Enter发布]

百度中 用Visual Basic实现点对点通讯 相关内容
Google搜索中 用Visual Basic实现点对点通讯 相关内容
雅虎中 用Visual Basic实现点对点通讯 相关内容
Sogou搜索中 用Visual Basic实现点对点通讯 相关内容

相关软件 最新回复帖子:

·用Visual Basic实现点对点通讯
·优化数据库大幅度提高Oracle的性能
·教你如何用Visual Basic编写病毒
·Flash高级实例:精美时钟的制作
·史上最小 55MB的Win XP现在就能下载
·PHOTOSHOP中利用壁画滤镜制作图像边缘
·解决eMule电骡导入未下载连接的问题
·香农定理与”猫”的速度
·教你免费四招 无线上网可以不用花钱
·Dreamweaver 也能做动画


  相关软件 用Visual Basic实现点对点通讯相关文章
Visual baisc中Byval与Byref的区别 VB6.0中Dir()函数的使用方法
VB中使用WinSock控件编写网络程序 VB程序中用ADO对象动态创建数据库和表
掌握VB中的ADO数据对象编程 用VB6.0实现网络实时监控系统
Visual Basic6.0事件机制分析 好文回顾:Visual Basic 十年风云
对VB6的后期绑定和前期绑定的一点看法 用VB设计“投票评选”程序的简单方法
用VB备份和恢复SQL Server数据库的方法 利用Visual Basic开发SAP接口程序初探
在VB环境中操作三维模型的实现方法 基于Visual Basic 6的网络程序设计
VB开发应用软件之写在动手之前 VB第三方控件实现XP资源管理器垂直栏
Viusal Basic程序员的.NET泛型编程 用VB编程实现图像的熠熠生辉效果
VB6中使用错误处理对程序速度的影响 VB实现文字“闪入”显示的特殊效果