2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩13頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第28章 聊天室的設(shè)計(jì)與實(shí)現(xiàn),網(wǎng)絡(luò)聊天已經(jīng)成為人們休閑、交流的一種重要方式。本章將介紹一個(gè)很實(shí)用的網(wǎng)絡(luò)應(yīng)用程序:基于客戶端/服務(wù)器模式的聊天室。這個(gè)應(yīng)用程序包括服務(wù)器端應(yīng)用程序和客戶度端應(yīng)用程序兩部分,都是基于CSocket類開發(fā)的。,28.1 聊天室程序功能說明,服務(wù)器端聊天程序負(fù)責(zé)接收來自客戶端的聊天信息,并把這些信息轉(zhuǎn)發(fā)到其他聊天客戶端中??蛻舳肆奶斐绦蜇?fù)責(zé)建立和維護(hù)與服務(wù)器端的連接,向服務(wù)器端發(fā)送聊天內(nèi)容,同時(shí)接收來自服務(wù)器

2、的聊天信息。,28.1.1 服務(wù)器端功能介紹,服務(wù)器端的界面如圖28.1所示。服務(wù)器程序可以指定特定的端口號,以監(jiān)聽客戶端的連接請求,并且需要維護(hù)一個(gè)客戶端的連接表,以記錄所有成功的連接。服務(wù)器程序要能夠及時(shí)接收從各客戶端發(fā)送過來的信息,然后把這些信息轉(zhuǎn)發(fā)給其他已連入的客戶端。服務(wù)器端還要能夠維護(hù)連接表,在客戶端斷開連接時(shí)從列表中刪除相應(yīng)的表項(xiàng),并及時(shí)更新連接表。,28.1.2 客戶端功能介紹,客戶端程序的主界面如圖28.2所示???/p>

3、戶端啟動后,需要根據(jù)用戶的設(shè)置,建立與服務(wù)器的連接。建立連接后,能夠?qū)⒂脩糨斎氲男畔l(fā)送給服務(wù)器,并能夠接收來自服務(wù)器的消息。在用戶突出聊天室時(shí),要關(guān)閉與服務(wù)器的連接。,,28.1.3 消息類的定義,為了便于處理需要發(fā)送和接收的信息,通常把它們封裝成一個(gè)類。本示例中,將它們封裝成為了一個(gè)CMessage類,該類基于Cobject類,具體代碼如下所示。,28.2 服務(wù)器端應(yīng)用程序,下面介紹服務(wù)器端應(yīng)用程序的開發(fā)過程和主要代碼。,28.

4、2.1 建立服務(wù)器應(yīng)用程序框架,下面列出的是創(chuàng)建服務(wù)器應(yīng)用程序的具體步驟。,,28.2.2 偵聽套接字類,在服務(wù)端添加名為CListenSocket的類,該類派生于CSocket類,用于監(jiān)控客戶端連接的狀態(tài),在客戶端斷開連接時(shí)從連接列表中刪除相應(yīng)的項(xiàng)。CListenSocket類定義如下所示。,28.2.3 客戶套接字類,在服務(wù)端添加名為CClientSocket的類,該類派生于CSocket類,用于建立與客戶端的連接,及發(fā)送接收

5、客戶端套接字的消息。CClientSocket類定義如下所示。,28.2.4 服務(wù)器主界面類,系統(tǒng)主界面類CServerDlg,包含了對【建立服務(wù)】、【停止服務(wù)】按鈕的單擊事件的處理函數(shù)及相關(guān)配套函數(shù)。,28.3 客戶端應(yīng)用程序,聊天室客戶端應(yīng)用程序框架的建立與服務(wù)器程序框架建立的過程相同,在此就不再贅述,下面將對客戶端的相關(guān)代碼作詳細(xì)介紹。,28.3.1 客戶端套接字類,在服務(wù)端添加名為CClientSocket的類,該類派生于

6、CSocket類,用于處理客戶端與服務(wù)器之間的通信,如發(fā)起一個(gè)與服務(wù)器的連接請求、發(fā)送和接收消息。,28.3.2 客戶端主界面類,系統(tǒng)主界面類CClientDlg,包含了對【連接】、【斷開】按鈕的單擊事件的處理函數(shù)及相關(guān)配套函數(shù)。,28.4 小結(jié),通過本章所講解的內(nèi)容,使讀者了解了聊天程序的具體編寫過程。本章的程序只是一個(gè)聊天室的示例,并不是一個(gè)完善的、功能齊全的聊天室軟件,旨在使讀者了解Visual C++網(wǎng)絡(luò)編程的原理和步驟。感

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論