在VB中如何使用 Winsock 控件
在VB中如何使用 Winsock 控件
衡陽師范學(xué)院 徐雨明 郵編:421008 衡陽計(jì)量測(cè)試中心 肖 瓊 郵編:421007
摘要:本文介紹如何利用 WinSock 控件可以與遠(yuǎn)程計(jì)算機(jī)建立連接,并通過用戶數(shù)據(jù)文報(bào)協(xié)議 (UDP)或者傳輸控制協(xié)議 (TCP)進(jìn)行數(shù)據(jù)交換,并分別給出Winsock控件使用 UDP 協(xié)議和TCP協(xié)議進(jìn)行遠(yuǎn)程計(jì)算機(jī)連接的應(yīng)用實(shí)例
關(guān)鍵詞:VB、控件、協(xié)議
1.引言
1.1 Winsock 控件可能的用途
創(chuàng)建收集用戶信息的客戶端應(yīng)用程序,并將收集的信息發(fā)送到某中央服務(wù)器。
創(chuàng)建一個(gè)服務(wù)器應(yīng)用程序,作為多個(gè)用戶的數(shù)據(jù)的匯入點(diǎn)。
創(chuàng)建“聊天”應(yīng)用程序。
1.2 選擇通訊協(xié)議的標(biāo)準(zhǔn)
在使用 WinSock 控件時(shí),首先需要考慮使用什么協(xié)議?梢允褂玫膮f(xié)議包括 TCP 和 UDP。兩種協(xié)議之間的重要區(qū)別在于它們的連接狀態(tài):
(1、) TCP 協(xié)議控件是基于連接的協(xié)議,可以將它同電話系統(tǒng)相比。在開始數(shù)據(jù)傳輸之前,用戶必須先建立連接。
(2、) UDP 協(xié)議是一種無連接協(xié)議,兩臺(tái)計(jì)算機(jī)之間的傳輸類似于傳遞郵件:消息從一臺(tái)計(jì)算機(jī)發(fā)送到另一臺(tái)計(jì)算機(jī),但是兩者之間沒有明確的連接。另外,單次傳輸?shù)淖畲髷?shù)據(jù)量取決于具體的網(wǎng)絡(luò)。
到底選擇哪一種協(xié)議通常是由需要?jiǎng)?chuàng)建的應(yīng)用程序決定的。下面的幾個(gè)問題將有助于選擇適宜的協(xié)議:
在收發(fā)數(shù)據(jù)的時(shí)候,應(yīng)用程序是否需要得到客戶端或者服務(wù)器的確認(rèn)信息?如果需要,使用 TCP 協(xié)議,在收發(fā)數(shù)據(jù)之前先建立明確的連接。
數(shù)據(jù)量是否特別大(例如圖象與聲音文件)?在連接建立之后,TCP 協(xié)議將維護(hù)連接并確保數(shù)據(jù)的完整性。不過,這種連接需要更多的計(jì)算資源,因而是比較“昂貴”的。
數(shù)據(jù)發(fā)送是間歇的',還是在一個(gè)會(huì)話內(nèi)?例如,如果應(yīng)用程序在某個(gè)任務(wù)完成的時(shí)候需要通知某個(gè)計(jì)算機(jī),UDP 協(xié)議是更適宜的。UDP 協(xié)議適合發(fā)送少量的數(shù)據(jù)。
1.3 協(xié)議的設(shè)置
在設(shè)計(jì)時(shí),可以按如下方式設(shè)置應(yīng)用程序使用的協(xié)議:在“屬性”窗口中單擊“協(xié)議”,然后選擇 sckTCPProtocol 或者 sckUDPProtocol。也可以使用程序代碼來設(shè)置 Protocol 屬性,如下所示:
Winsock1.Protocol = sckTCPProtocol
1.4 確定計(jì)算機(jī)的名稱
在與遠(yuǎn)程計(jì)算機(jī)相連接的時(shí)候,需要知道它的 IP 地址或者它的“計(jì)算機(jī)名”。IP 地址是一串?dāng)?shù)字,每三個(gè)數(shù)字為一組,中間用點(diǎn)隔開(形如 xxx.xxx.xxx.xxx)。通常,最易記住的是“計(jì)算機(jī)名”。
要確定“計(jì)算機(jī)名”,請(qǐng)按照以下步驟執(zhí)行:
(1)在計(jì)算機(jī)的“任務(wù)欄”上,單擊“啟動(dòng)”。
(2)在“設(shè)置“項(xiàng)中,單擊“控制面板“。
(3)雙擊“網(wǎng)絡(luò)”圖標(biāo)。
(4)單擊“標(biāo)識(shí)”選項(xiàng)卡。
(5)在“計(jì)算機(jī)名稱”框中可以找到計(jì)算機(jī)的名稱。
(6)上面找到的計(jì)算機(jī)名稱可以作為 RemoteHost 屬性的值。
【在VB中如何使用 Winsock 控件】相關(guān)文章:
2.基于VB中控件和類的霓虹燈效果的設(shè)計(jì)與實(shí)現(xiàn)
4.關(guān)于ASP.NET DropDownList控件的使用方法