【正文】
oo。它具有信息收發(fā)速度快,保密性好,占用網(wǎng)絡帶寬資源低,占用服務器吞吐能力低,易于編程實現(xiàn)等優(yōu)點。它的實現(xiàn)無需對企業(yè)原有的局域網(wǎng)硬件進行任何改動,具有實現(xiàn)成本低廉的優(yōu)點,它的使用能有效地降低局域網(wǎng)通信負荷,提高局域網(wǎng)的使用效率,可以很好地解決企業(yè)內部局域網(wǎng)的各種通信需求。 本系統(tǒng)采用基于Socket的局域網(wǎng)通信工具的設計與實現(xiàn)的方法。然而,隨著企業(yè)規(guī)模的擴大,業(yè)務量的增加,企業(yè)內部的信息越來越私密,企業(yè)只希望員工通過內部局域網(wǎng)進行溝通與交流,避免企業(yè)內部機密通過Internet泄露到外部。出于高效、快速地處理各種事務的目的,越來越多的企業(yè)在其內部使用局域網(wǎng)來進行工作。關鍵字:局域網(wǎng)、即時通信、套接字、異步模式An instant messaging chat system based of LANAbstractAlong with the highspeed development of the puter science and Internet, chatting on line has been an important method in our munication. Comparing with Email and telephone, the chatline service is more realtime and effective.This thesis proposes a solution of a LAN chatting software based on C++ language, which is operated on the VC platform. This chatting software includes two modules: the server and the client, which can municate with each other. The server module mainly pletes the sever device’s configuration. The client module mainly pletes the users’ login, registration, instant messaging and so on. The software used model of nonblocking asynchronous socket , And to achieve the object and MFC series documents the preservation of the object data. This software can help the pany to build their own chatting system in the local area network, and it also can avoid the staff of the pany disclosing the insider information by using the other software such as , but this software has only pleted the basic function as a chatting system, so it need much more improvement. 該軟件能夠幫助企業(yè)在局域網(wǎng)內搭建起自己的聊天系統(tǒng),避免企業(yè)內部員工使用類似等軟件泄露內部信息,但是該軟件只實現(xiàn)了聊天的基本功能,還有很多不足之處需要改進。服務器端模塊主要實現(xiàn)了服務器的配置和數(shù)據(jù)的傳遞;客戶端模塊主要實現(xiàn)了用戶注冊、登錄、文字聊天等功能。本論文提出一個運行于VC平臺上的局域網(wǎng)聊天軟件的解決方案。本科畢業(yè)設計(論文)題 目 基于局域網(wǎng)的即時通訊聊天室系統(tǒng)設計 部 系 地方生部 專 業(yè) 電子信息工程 基于局域網(wǎng)的即時通訊聊天系統(tǒng)的設計摘 要隨著計算機科學和Internet 的飛速發(fā)展, 網(wǎng)上聊天已成為人們相互交流的一種方式, 與Email、電話相比, 聊天服務更具有實時性和有效性。該聊天軟件包括服務器端和客戶端兩個模塊,客戶端通過服務器端進行通信。該軟件采用異步套接字的非阻塞模式,并實現(xiàn)對象的序列化和MFC文件對象實現(xiàn)數(shù)據(jù)的保存。Key words:LAN 、Instant messaging、Socket、asynchronous modleIII目 錄摘 要 IAbstract II1 概 述 1 系統(tǒng)現(xiàn)狀 1 系統(tǒng)內容與目標 2 系統(tǒng)綜述 22 系統(tǒng)開發(fā)環(huán)境和關鍵技術 3 開發(fā)環(huán)境 3 關鍵技術 3 .Visual C++和面向對象程序設計 3 M F C 4 WINDOWS SOCKETS網(wǎng)絡編程接口 4 WSAAsyncSelect模型開發(fā) 5 TCP/IP協(xié)議、TCP協(xié)議 6 Client/Server結構(客戶機/服務器模式) 83 系統(tǒng)分析與設計 9 系統(tǒng)分析 9 系統(tǒng)需求 9 需求分析 10 系統(tǒng)設計 11 設計原則 11 工作流程 12 功能設計 13 共享數(shù)據(jù)類設計 134 系統(tǒng)實現(xiàn) 16 服務器端設計實現(xiàn) 16 服務器端靜態(tài)類圖 16 服務器主要類介紹 16 服務器端主要過程介紹 19 客戶端設計實現(xiàn) 25 客戶端靜態(tài)類圖 25 客戶端主要類介紹 25 27 32 測試意義 32 32 32 測試用例 33總結與展望 34參考文獻 36致 謝 371 概 述近年來,隨著全球信息化進程的不斷發(fā)展,網(wǎng)絡也在飛速發(fā)展。在內部局域網(wǎng)的幫助下,企業(yè)得以簡化信息流程,提高信息交換的速度,從而提高工作效率。為了解決上述矛盾,人們提出了開發(fā)局域網(wǎng)聊天軟件的構想,通過局域網(wǎng)聊天軟件,企業(yè)員工可以隨時的進行即時消息傳遞,召開網(wǎng)絡會議等,有利于提高工作消息效率,同時又保護了企業(yè)內部信息的安全性?;赟ocket的局域網(wǎng)通信軟件可以為企業(yè)原有的局域網(wǎng)提供一種良好,安全,快速的通信機制。 基于Socket的局域網(wǎng)聊天工具很好地詮釋了Socket通信的原理,并且在企業(yè)內部通信、教學、討論等應用中都具有一定的實用價值。 基于Socket的局域網(wǎng)通信軟件應用范圍廣闊,不但可以處理傳統(tǒng)的通信需求,而且也能擴展以適應新型的網(wǎng)絡應用,如網(wǎng)絡教育,數(shù)據(jù)影音傳輸?shù)?,擁有廣泛的應用前景。除了這些國外開發(fā)的產(chǎn)品,還有國產(chǎn)的有名的,新浪UC,LAVALAVA等,這些工具統(tǒng)統(tǒng)都實現(xiàn)了廣域網(wǎng)上的即時通信,盡管都是即時通信,實現(xiàn)了即時聊天,以及文件傳輸?shù)闹饕δ?,但是也各有各的特色,比如ICQ的巨大客戶群,MSN的個性化表情,YAHOO通的易操作性等。這些軟件,在使用方面各有特色,在實現(xiàn)方面也各有所長,但基于這些產(chǎn)品正在商業(yè)運營階段,其實現(xiàn)方式屬于商業(yè)機密,具體細節(jié)不一定得知,但是它在大的方面無非就是各種利用各種平臺上的網(wǎng)絡通信接口,建構基于下層TCP/IP,或者UDP協(xié)議的軟件產(chǎn)品。主要研究開發(fā)內容是:熟悉C++和VC的操作,搭配系統(tǒng)開發(fā)平臺,探索在此開發(fā)平臺下,利用socket編程技術、多線程開發(fā)技術、TCP、UDP協(xié)議等進行局域網(wǎng)聊天軟件的實際開發(fā)。為實現(xiàn)和方便客戶端間通信,在客戶端進行了人性化的界面設計,用戶可以注冊號碼,登陸界面,具有發(fā)送離線消息功能。第 2 章介紹了系統(tǒng)的開發(fā)環(huán)境和關鍵技術,例如Socket編程技術,非阻塞開發(fā)模式等等。將對系統(tǒng)進行需求分析,對組成系統(tǒng)的功能模塊進行劃分,對每個模塊將要實現(xiàn)的功能進行闡述和說明。第4章是系統(tǒng)實現(xiàn),分別介紹了服務器端和客戶端每個功能的執(zhí)行過程,畫出主要模塊的流程圖。最后,對本設計進行歸納總結,全面闡述本次設計中的體會。對此,我們選擇的硬件環(huán)境和軟件環(huán)境如下: 硬件環(huán)境 內存:256MB或更高 因此,在應用時應采用更好的配置。操作系統(tǒng):Windows 2000 /Windows XP / Windows 2003 開發(fā)語言:C++ 關鍵技術 .Visual C++和面向對象程序設計VC基于C,C++語言,主要由是MFC組成,是與系統(tǒng)聯(lián)系非常緊密的編程工具,它兼有高級,和低級語言的雙重性,功能強大,靈活,執(zhí)行效率高,幾乎可說VC在 Windows平臺無所不能。Visual C++是一個典型的面向對象程序的設計語言,它也是目前為止功能最強、最受歡迎、應用最廣泛、高效的Windows應用程序開發(fā)工具,它是在C 語言基礎之上發(fā)展起來的,是C語言的超集。因此Visual C++又稱作是一個集成開發(fā)工具,它提供了軟件代碼自動生成和可視化的資源編輯功能。 M F CMFC,微軟基礎類(Microsoft Foundation Classes),實際上是微軟提供的,用于在C++環(huán)境下編寫應用程