1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

    <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
    <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
  2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
    現在位置:范文先生網>理工論文>計算機信息技術>在VB中如何使用 Winsock 控件

    在VB中如何使用 Winsock 控件

    時間:2023-02-21 00:11:48 計算機信息技術 我要投稿
    • 相關推薦

    在VB中如何使用 Winsock 控件

    在VB中如何使用 Winsock 控件

    衡陽師范學院      徐雨明   郵編:421008    衡陽計量測試中心   肖  瓊   郵編:421007

        摘要:本文介紹如何利用 WinSock 控件可以與遠程計算機建立連接,并通過用戶數據文報協議 (UDP)或者傳輸控制協議 (TCP)進行數據交換,并分別給出Winsock控件使用 UDP 協議和TCP協議進行遠程計算機連接的應用實例

        關鍵詞:VB、控件、協議

    1.引言

    1.1  Winsock 控件可能的用途

        創建收集用戶信息的客戶端應用程序,并將收集的信息發送到某中央服務器。

        創建一個服務器應用程序,作為多個用戶的數據的匯入點。

        創建“聊天”應用程序。

    1.2 選擇通訊協議的標準

        在使用 WinSock 控件時,首先需要考慮使用什么協議。可以使用的協議包括 TCP 和 UDP。兩種協議之間的重要區別在于它們的連接狀態:

       (1、) TCP 協議控件是基于連接的協議,可以將它同電話系統相比。在開始數據傳輸之前,用戶必須先建立連接。

       (2、) UDP 協議是一種無連接協議,兩臺計算機之間的傳輸類似于傳遞郵件:消息從一臺計算機發送到另一臺計算機,但是兩者之間沒有明確的連接。另外,單次傳輸的最大數據量取決于具體的網絡。

        到底選擇哪一種協議通常是由需要創建的應用程序決定的。下面的幾個問題將有助于選擇適宜的協議:

       

    在收發數據的時候,應用程序是否需要得到客戶端或者服務器的確認信息?如果需要,使用 TCP 協議,在收發數據之前先建立明確的連接。

        數據量是否特別大(例如圖象與聲音文件)?在連接建立之后,TCP 協議將維護連接并確保數據的完整性。不過,這種連接需要更多的計算資源,因而是比較“昂貴”的。

        數據發送是間歇的,還是在一個會話內?例如,如果應用程序在某個任務完成的時候需要通知某個計算機,UDP 協議是更適宜的。UDP 協議適合發送少量的數據。

    1.3  協議的設置

        在設計時,可以按如下方式設置應用程序使用的協議:在“屬性”窗口中單擊“協議”,然后選擇 sckTCPProtocol 或者 sckUDPProtocol。也可以使用程序代碼來設置 Protocol 屬性,如下所示:

         Winsock1.Protocol = sckTCPProtocol

    1.4  確定計算機的名稱

        在與遠程計算機相連接的時候,需要知道它的 IP 地址或者它的“計算機名”。IP 地址是一串數字,每三個數字為一組,中間用點隔開(形如 xxx.xxx.xxx.xxx)。通常,最易記住的是“計算機名”。

        要確定“計算機名”,請按照以下步驟執行:

        (1)在計算機的“任務欄”上,單擊“啟動”。

    (2)在“設置“項中,單擊“控制面板“。

        (3)雙擊“網絡”圖標。

        (4

    )單擊“標識”選項卡。

        (5)在“計算機名稱”框中可以找到計算機的名稱。

        (6)上面找到的計算機名稱可以作為 RemoteHost 屬性的值。

    2. Winsock控件使用 TCP 協議應用實例

        如果應用程序要使用 TCP 協議,那么首先必須決定應用程序是服務器還是客戶端。如果要創建一個服務器端,那么應用程序需要“監聽”指定的端口。當客戶端提出連接請求時,服務器端能夠接受請求并建立連接。在連接建立之后,客戶端與服務器端可以自由地互相通訊。

        下列步驟創建一個非常簡單的服務器:

        (1

    ) 要創建一個 TCP 服務器,請按照以下步驟執行:

        (2) 創建新的 Standard EXE 工程。

        (3) 將窗體的標題改為“TCP 服務器”。

    (4) 在窗體中放入一個 Winsock 控件(c:\windows\system\mswinsck.ocx),并將它的名字改為 tcpServer。

        (5) 在窗體上添加兩個 TextBox 控件。將第一個命名為 txtSend,第二個為 txtOutput。

        為窗體添加如下的代碼。

    Private Sub Form_Load()

    '將 LocalPort 屬性設置為一個整數。

    '然后調用 Listen 方法。

    tcpServer.LocalPort = 1001

    tcpServer.Listen

    End Sub

     

    Private Sub tcpServer_ConnectionRequest (ByVal requestID As Long)

    '檢查控件的 State 屬性是否為關閉的。

    '如果不是,

    '在接受新的連接之前先關閉此連接。

    If tcpServer.State <> sckClosed Then _

    tcpServer.Close

    '接受具有 requestID 參數的'連接。

    tcpServer.Accept requestID

    End Sub

     

    Private Sub txtSend_Change()

    '名為 txtSend 的 TextBox 控件中

    >

    '包含了要發送的數據。當用戶往文本框中

    '鍵入數據時,使用 SendData 方法

    '發送輸入的字符串。

    tcpServer.SendData txtSend.Text

    End Sub

     

    Private Sub tcpServer_DataArrival (ByVal bytesTotal As Long)

    '為進入的數據聲明一個變量。

    '調用 GetData 方法,并將數據賦予名為 txtOutput 的 TextBox 的 Text 屬性。

    Dim strData As String

    tcpServer.GetData strData

    txtOutput.Text = strData

    End Sub

        上面的步驟創建了一個簡單的服務器應用程序。為了使它能夠工作,還必須為它創建一個客戶端的應用程序。

        要創建 TCP 客戶端,請按照以下步驟執行:

        (1) 在工程中添加一個新的窗體。

        (2) 將窗體的標題改為“TCP Client”。

        (3)

    【在VB中如何使用 Winsock 控件】相關文章:

    VB編程中網格控件的選用及使用方法08-06

    VB編程中網格控件的選用及使用方法08-06

    VC 中靜態控件的特殊用法04-16

    如何用VB存取SQL Server中的圖像數據04-12

    VC++中靜態控件的特殊用法08-06

    化學教學中如何正確使用多媒體08-02

    利用VC中的通訊控件開發串形通信程序08-06

    談談在中學數學教學中如何使用教材08-17

    淺談如何使用蘇教版語文教材中的插圖研究08-20

    国产福利萌白酱精品tv一区_日韩亚洲中字无码一区二区三区_亚洲欧洲高清无码在线_全黄无码免费一级毛片
    1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

      <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
      <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
    2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
      熟女中文字幕乱码 | 九九九热视频最新在线 | 日韩欧美亚洲国产ay | 骚包在线-最新中文字幕 | 欧美视频专区一二在线观看 | 日韩欧美tv一区二区在线观看 |