C#網(wǎng)絡(luò)聊天系統(tǒng)的方案設(shè)計(jì)書(shū)與實(shí)現(xiàn)_第1頁(yè)
C#網(wǎng)絡(luò)聊天系統(tǒng)的方案設(shè)計(jì)書(shū)與實(shí)現(xiàn)_第2頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余10頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、封面作者: PanHongliang摘要21 世紀(jì)人類(lèi)進(jìn)入了一個(gè)以網(wǎng)絡(luò)計(jì)算機(jī)為中心的信息主導(dǎo)型時(shí)代,現(xiàn)在人們可以 使用計(jì)算機(jī)在瞬間迅速地處理和傳遞大量信息。網(wǎng)絡(luò)的快速發(fā)展使得信息交流的速度 和方式發(fā)生了巨大的變化,人們已經(jīng)越來(lái)越明顯地看到了計(jì)算機(jī)網(wǎng)絡(luò)帶來(lái)的社會(huì)生活 方面的巨大變革。隨著互聯(lián)網(wǎng)技術(shù)的飛速進(jìn)步,有關(guān)網(wǎng)絡(luò)的技術(shù)層出不窮,網(wǎng)絡(luò)聊天 系統(tǒng)也成為了一種深受大眾喜愛(ài)、應(yīng)僅供個(gè)人學(xué)習(xí)用廣泛的工具。網(wǎng)絡(luò)聊天是互聯(lián)網(wǎng)上一種非常普及的應(yīng)用, 文中以 .NET 平臺(tái)作為開(kāi)發(fā)工具, 使 用 Socket作為應(yīng)用程序開(kāi)發(fā)模型,可方便服務(wù)器與客戶端建立連接,數(shù)據(jù)傳輸和斷 開(kāi)連接。此外,在開(kāi)發(fā)的過(guò)程中還采用了

2、多線程技術(shù),以完成客戶進(jìn)程間的調(diào)度,實(shí) 現(xiàn)多用戶操作。文章中設(shè)計(jì)了一個(gè)簡(jiǎn)單的桌面聊天系統(tǒng), 包括服務(wù)器端和客戶端兩個(gè) 部分, 服務(wù)器和客戶端之間通過(guò) Socket編程技術(shù)實(shí)現(xiàn)建立連接的過(guò)程,并進(jìn)行通 信。服務(wù)器端主要包括如下功能:顯示登陸服務(wù)器主機(jī)及端口號(hào),記錄登陸用戶并管 理用戶基本信息??蛻舳朔譃橛脩舻顷懞土奶靸蓚€(gè)子模塊,兩個(gè)模塊包括如下功能: 顯示服務(wù)器端口、用戶登陸、管理用戶聊天記錄、顯示用戶狀態(tài)和私聊模式。 關(guān)鍵詞 :網(wǎng)絡(luò)聊天系統(tǒng),服務(wù)器端,客戶端, Socket ,多線程ABSTRACTThe 21st century, mankind has entered a informat

3、ion-oriented era of network computeras the center , now people can use the computer rapidly processing and transmistinginformationin an instant. The rapid development of network makes the exchange ofinformation rate and manner has taken place tremendous changes, it is more and moreevident that enorm

4、ous changes of the social life brought about by the computer networks.Asthe internet is developing rapidly, the technology on network emerges one anotherinstantly.The network chat system is also becoming a popular, widely-used tool.Network chat on the internet is a very popular application, in the t

5、ext, we use .NETplatform as a development tool, and socket as the application development model, to facilitatethe establishment of the client and server connectivity, data transmission and disconnect. Inaddition, in the process of developing also usesthe multi-threaded technology to complete theproc

6、essfor scheduling, and multi-user operation. The article designs a simple desktop chatsystem, including server and client in two parts, between the client and server through Socketprogramming technology to connect the process, and communications.The server end mainlyincludes the following functions:

7、 showing landing server host and port number, users logrecords andmanageuserbasic information. The customer end module was divided into twopieces of module, logining and chating, which include the following functions: showing serverport, logining, the management of user chats, showing users state an

8、d private model.Keywords:Network Chat System, the server end, the client end, Socket, multi-threadingtechnology目錄第 1 章引言 錯(cuò)誤!未定義書(shū)簽。1.1 課題的背景及意義 錯(cuò)誤!未定義書(shū)簽。1.2 課題的研究現(xiàn)狀 錯(cuò)誤!未定義書(shū)簽。1.3本文的組織方式 1第 2 章關(guān)鍵技術(shù)及開(kāi)發(fā)工具 錯(cuò)誤!未定義書(shū)簽。2.1 TCP/IP 協(xié)議和 Socket 簡(jiǎn)介錯(cuò)誤!未定義書(shū)簽。2.1.1 TCP 協(xié)議簡(jiǎn)介錯(cuò)誤!未定義書(shū)簽。2.1.2 端口簡(jiǎn)介 錯(cuò)誤!未定義書(shū)簽。2.1.3 名稱(chēng)空間 錯(cuò)誤!未

9、定義書(shū)簽。2.1.4 Socket 編程技術(shù)錯(cuò)誤!未定義書(shū)簽。2.2 多線程技術(shù) 錯(cuò)誤!未定義書(shū)簽。2.3開(kāi)發(fā)工具介紹 錯(cuò)誤!未定義書(shū)簽。第 3 章網(wǎng)絡(luò)聊天系統(tǒng)分析 錯(cuò)誤!未定義書(shū)簽。3.1 系統(tǒng)實(shí)現(xiàn)目標(biāo)及基本原理 錯(cuò)誤!未定義書(shū)簽。3.2 需求分析 錯(cuò)誤!未定義書(shū)簽。3.2.1 功能需求分析 錯(cuò)誤!未定義書(shū)簽。3.2.2 性能需求分析 錯(cuò)誤!未定義書(shū)簽。3.3系統(tǒng)體系結(jié)構(gòu) 錯(cuò)誤!未定義書(shū)簽。第 4 章系統(tǒng)設(shè)計(jì) 錯(cuò)誤!未定義書(shū)簽。4.1 系統(tǒng)模塊分析 錯(cuò)誤!未定義書(shū)簽。4.2服務(wù)器端的設(shè)計(jì) 錯(cuò)誤!未定義書(shū)簽。4.3客戶端的設(shè)計(jì) 錯(cuò)誤!未定義書(shū)簽。第 5 章系統(tǒng)實(shí)現(xiàn) 錯(cuò)誤!未定義書(shū)簽。5.1 服

10、務(wù)器端的實(shí)現(xiàn) 錯(cuò)誤!未定義書(shū)簽。5.1.1 服務(wù)器初始化 錯(cuò)誤!未定義書(shū)簽。5.1.2 建立與客戶端連接 錯(cuò)誤!未定義書(shū)簽。5.1.3 與客戶端通信 錯(cuò)誤!未定義書(shū)簽。5.1.4 向客戶端發(fā)送命令 錯(cuò)誤!未定義書(shū)簽。5.2 客戶端的實(shí)現(xiàn) 錯(cuò)誤!未定義書(shū)簽。5.2.1 登陸子模塊的實(shí)現(xiàn) 錯(cuò)誤!未定義書(shū)簽。5.2.2 客戶端聊天子模塊的實(shí)現(xiàn) 2結(jié)論錯(cuò)誤!未定義書(shū)簽。參考文獻(xiàn) 錯(cuò)誤!未定義書(shū)簽。致謝錯(cuò)誤!未定義書(shū)簽。1.3本文的組織方式本文對(duì)網(wǎng)絡(luò)聊天系統(tǒng)進(jìn)行了詳細(xì)的分析研究,并采用當(dāng)今比較主流的技術(shù)進(jìn)行了 設(shè)實(shí)現(xiàn)計(jì)。本文共有 5 章。第 1 章 引言 主要是給出課題的研究背景、研究的現(xiàn)狀,并且概括了

11、論文主要內(nèi) 容。第 2 章 關(guān)鍵技術(shù)及開(kāi)發(fā)工具 介紹了聊天系統(tǒng)所采用的關(guān)鍵技術(shù),并對(duì)系統(tǒng)開(kāi)發(fā) 工具進(jìn)行了簡(jiǎn)單的介紹。第 3 章 系統(tǒng)分析與設(shè)計(jì) 首先介紹系統(tǒng)實(shí)現(xiàn)的基本原理,給出了要實(shí)現(xiàn)的目標(biāo)并 對(duì)其進(jìn)行需求分析,并重點(diǎn)給出了系統(tǒng)的體系結(jié)構(gòu)。第 4 章 系統(tǒng)詳細(xì)設(shè)計(jì) 首先對(duì)系統(tǒng)的功能模塊進(jìn)行劃分,并著重給出了系統(tǒng)的詳 細(xì)設(shè)計(jì)方案。第 5 章 系統(tǒng)實(shí)現(xiàn) 針對(duì)系統(tǒng)功能模塊分別進(jìn)行實(shí)現(xiàn),包括服務(wù)器部分和客戶端部 分??偨Y(jié) 對(duì)所做的研究和設(shè)計(jì)進(jìn)行總結(jié)。最后附上致謝和參考文獻(xiàn)!本聊天系統(tǒng)的總體框架如圖 4.1 所示:ChatClie ntForm_Load 處理程序中,首先顯示用戶登錄窗口,如圖 5.3

12、所示。如果登錄 成功,那么獲取與服務(wù)器的連接并得到與服務(wù)器數(shù)據(jù)交互的流通道,向服務(wù)器發(fā)送 CONN 請(qǐng)求命令,同時(shí)啟動(dòng)一個(gè)新的線程用于響應(yīng)從服務(wù)器發(fā)回的信息(在方法ServerRespo nse(中實(shí)現(xiàn))。ServerResp on se(方法用于和服務(wù)器進(jìn)行數(shù)據(jù)通信,主要是接收從服務(wù)器發(fā)回的 信息,根據(jù)不同的命令,執(zhí)行相應(yīng)的操作。當(dāng)選中“悄悄話”復(fù)選框時(shí),便會(huì)進(jìn)入priCheckBox_CheckedChange(處理程序。用戶進(jìn)行私聊時(shí)的程序流程圖如圖 5.5所 示:圖 5.5 私聊流程圖522 客戶端芙現(xiàn)態(tài)token塊0=exit聳名AChat在用線戶用聊戶N 天列l(wèi)ientF(表.cs

13、使用 Socket 對(duì)在 ChatCli象和 Thread 對(duì)象,在代碼文件中加入名字空間System.Net、System.Net.Sockets 和System.Thread 的引用。結(jié)束當(dāng)加載窗體時(shí),便會(huì)進(jìn)入 ChatClientForm_Load 處理程序,在十亞坤的:, 亞進(jìn)行 陸圖請(qǐng)?zhí)?用用用戶一戶在線態(tài)顯示IP聊天-orm1.es用模塊列私聊模式為了設(shè)置布爾值在priCheckBox_CheckedChange 處理程序中主要對(duì) privatemode 布爾屬性進(jìn)行設(shè)置,具體 代碼如下:private void priCheckBox_CheckedChange(object s

14、ender,System.EventArgs e)If(priCheckBox.Checked)Privatemode=true;ElsePrivatemode=false;當(dāng)單擊“發(fā)送”按鈕時(shí),便會(huì)進(jìn)入 btnSend_Click 處理程序。在 btnSend_Click 處 理程序中,如果 privatemode 布爾屬性值為 false (說(shuō)明不是私聊),將 CHAT 命令發(fā) 送給服務(wù)器;否則(為私聊),將 PRIV 命令發(fā)送給服務(wù)器,注意命令格式一定要與 服務(wù)器端的命令格式一致,用戶私聊模式如圖 5.6 所示。圖 5.6 盧勝寶收到沈亞坤的信息后的窗口當(dāng)單擊“離開(kāi)”按鈕時(shí),便進(jìn)入了 b

15、tnExit_Click 處理程序。在 btnExit_Click 處 理程序中,將 EXIT 命令發(fā)送給服務(wù)器,此命令格式要與服務(wù)器端的命令格式一致, 具體代碼如下:Private void btnExit_Click(Object sender , System.EventArgs e)String message=”EXIT| ”+UserAlias+”|;/將字符串轉(zhuǎn)化為字符數(shù)組Byteoutbytes=System.Text.Encoding.ASCII.GetBytes(message.ToCharArray();/利用 NetworkStream 的 Write 方法發(fā)送if(p

16、rivatemodeN向所有用戶發(fā)送信息離Strm.Write(outbytes,0,outbytes.Length);用戶離開(kāi)后其他在線用戶的窗口顯示如圖 5.7 所示:圖 5.7 用戶崔小東離開(kāi)后盧勝寶的窗口從圖中可以看出,用戶崔小東離開(kāi)后,盧勝寶的在線用戶列表中的他的名字已經(jīng) 被刪除,并在信息欄里給出提示。Powered by版權(quán)申明本文部分內(nèi)容,包括文字、圖片、以及設(shè)計(jì)等在網(wǎng)上搜集整 理。版權(quán)為潘宏亮個(gè)人所有This article in eludes some parts, in cludi ng text, pictures, and desig n.Copyright is Pa

17、n Hon glia ngs pers onal own ership.用戶可將本文的內(nèi)容或服務(wù)用于個(gè)人學(xué)習(xí)、研究或欣賞,以及 其他非商業(yè)性或非盈利性用途,但同時(shí)應(yīng)遵守著作權(quán)法及其他相關(guān) 法律的規(guī)定,不得侵犯本網(wǎng)站及相關(guān)權(quán)利人的合法權(quán)利。除此以 外,將本文任何內(nèi)容或服務(wù)用于其他用途時(shí),須征得本人及相關(guān)權(quán) 利人的書(shū)面許可,并支付報(bào)酬。Users may use the contents or services of this article for pers onalstudy, research or appreciati on, and other non-commercial or non

18、-profitpurposes, but at the same time, they shall abide by the provisions ofcopyright law and other releva nt laws, and shall not infringe upon thelegitimate rights of this website and its releva nt obligees. In addition, whenany content or service of this article is used for other purposes, writtenpermission and remun erati on shall be obta ined from the pers on concernedand the releva nt obligee.轉(zhuǎn)載或引用本文內(nèi)容必須是以新聞性或資料性公共免費(fèi)信息為使用目的的合理、善意引用,不得對(duì)本文內(nèi)容原意進(jìn)行曲解、修 改,并自負(fù)版權(quán)等法律責(zé)任。Reproducti on or

溫馨提示

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

評(píng)論

0/150

提交評(píng)論