程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB綜合教程 >> 在VB中利用UDP協議編寫聊天程序

在VB中利用UDP協議編寫聊天程序

編輯:VB綜合教程
UDP協議是一種無連接協議,兩台計算機之間的數據傳輸類似於傳遞郵件:消息從一台計算機發送到另一台計算機,但是兩者之間沒有明確的連接。
  由於UDP協議不需要顯式的連接,就需要在兩個Winsock控件中間發送數據,關鍵需要完成以下的三步:
  1.將RemoteHost屬性設置為另一台計算機的名稱。
  2.將RemotePort屬性設置為第二個控件的LocalPort屬性。
  3.調用Bind方法,指定使用的LocalPort。
  因為兩台計算機的地位可以看成“對等的”,這種應用程序也被稱為點對點的應用程序。
  下面將創建一個聊天應用程序,兩個人可以通過它進行實時的交談。請按照以下步驟制作:
  1.創建一個新的StandardEXE工程。將缺省的窗體的名稱修改為frmPeerA,將窗體的標題修改為“PeerA”。
  2.在窗體中放入一個Winsock控件,並將其命名為udpPeerA。在“屬性”頁上,單擊“協議”並將協議修改為UDPProtocol。
  3.在窗體中添加兩個TextBox控件。將第一個命名為txtSend,第二個命名為txtOutput。
  4.為窗體添加如下的代碼。
  PrivateSubForm_Load()
  ′控件的名字為udpPeerA
  WithudpPeerA
  ′重點:必須將RemoteHost的值修改為對方計算機的名字。
  RemoteHost=″PeerB″
  RemotePort=1001′連接的端口號。
  Bind1002′綁定到本地的端口。
  EndWith
  frmPeerB.Show′顯示第二個窗體。
  EndSub
  PrivateSubtxtSend_Change()
  ′在鍵入文本時,立即將其發送出去。
  udpPeerA.SendDatatxtSend.Text
  EndSub
  PrivateSubudpPeerA_DataArrival_
  (ByValbytesTotalAsLong)
  DimstrDataAsString
  udpPeerA.GetDatastrData
  txtOutput.Text=strData
  EndSub
  要創建第二個UDP伙伴,請按照以下步驟執行:
  1.在工程中添加一個標准窗體,將窗體的名字修改為frmPeerB,將窗體的標題修改為“PeerB”。
  2.在窗體中放入一個Winsock控件,並將其命名為udpPeerB。
  3.在“屬性”頁上,單擊“協議”並將協議修改為“UDPProtocol”。
  4.在窗體上添加兩個TextBox控件。將第一個命名為txtSend,第二個命名為txtOutput。
  5.在窗體中添加如下代碼
  PrivateSubForm_Load()
  ′控件的名字為udpPeerB。
  WithudpPeerB
  ′重點:必須將RemoteHost的值改為對方計算機的名字。
  RemoteHost=″PeerA″
  RemotePort=1002′要連接的端口。
  Bind1001′綁定到本地的端口上。
  EndWith
  EndSub
  PrivateSubtxtSend_Change()
  ′在鍵入後立即發送文本。
  udpPeerB.SendDatatxtSend.Text
  EndSub
  PrivateSubudpPeerB_DataArrival_
  (ByValbytesTotalAsLong)
  DimstrDataAsString
  udpPeerB.GetDatastrData
  txtOutput.Text=strData
  EndSub
  運行工程,然後在兩個窗體的txtSendTextBox中分別鍵入一些文本。鍵入的文字將出現在另一個窗體的txtOutputTextBox中。->

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved