【正文】
就有了必要性,讓單位員工或者寢室同學(xué)不出內(nèi)網(wǎng)就能自由通信。由于公眾信息網(wǎng)是對(duì)整個(gè)社會(huì)開(kāi)放的公眾基礎(chǔ)網(wǎng)絡(luò),具有覆蓋性范圍廣、速度快、費(fèi)用低、使用方便等特點(diǎn),但同時(shí)卻存在著安全性差的問(wèn)題。企事業(yè)單位非常需要使用內(nèi)部即時(shí)通訊產(chǎn)品來(lái)提高工作效率。許多開(kāi)發(fā)商并沒(méi)有將此產(chǎn)品作為公司的重點(diǎn),也并沒(méi)有從客戶的角度出發(fā),只是在產(chǎn)品線上附加即時(shí)通訊產(chǎn)品,做的不夠完善,使此產(chǎn)品淪為邊緣產(chǎn)品,從而導(dǎo)致即時(shí)通訊產(chǎn)品市場(chǎng)萎縮。但絕大多數(shù)企事業(yè)單位只把即時(shí)通訊類(lèi)產(chǎn)品作為邊緣產(chǎn)品,沒(méi)有充分的認(rèn)識(shí)到即時(shí)通訊類(lèi)產(chǎn)品在工作中的重要作用,沒(méi)有想過(guò)去如何正確的應(yīng)用。鑒于此種情況,很多公司都在開(kāi)發(fā)新的即時(shí)通訊工具軟件,利用新的技術(shù)開(kāi)發(fā),使客戶端和服務(wù)器端的性能和功能都得到一定的提升,適合在企業(yè)內(nèi)部網(wǎng)絡(luò)和互聯(lián)網(wǎng)上運(yùn)行,同時(shí)使其具備跨平臺(tái)的特性,方便在各個(gè)系統(tǒng)上運(yùn)行。國(guó)內(nèi)在使用的最普及的就是騰訊,微軟的MSN也受到商務(wù)人士的青睞;國(guó)外主要使用的是由美國(guó)在線出的ICQ、AMI以及微軟的MSN等。最后,老師為我選定了基于VC++企業(yè)內(nèi)部通信軟件的設(shè)計(jì)與實(shí)現(xiàn)這一題目。應(yīng)用局域網(wǎng)辦公的企業(yè),必須要有自己企業(yè)內(nèi)部的通訊軟件,然而,現(xiàn)在,在廣域網(wǎng)上,可盈利的通訊軟件到處都是,而局域網(wǎng)內(nèi)的通訊軟件卻很少,在功能上,也是參差不齊。這種通信軟件是專(zhuān)為局域網(wǎng)通信而開(kāi)發(fā)的,它適用于局域網(wǎng),同時(shí)也促進(jìn)了局域網(wǎng)的發(fā)展,局域網(wǎng)發(fā)展又給通信軟件帶來(lái)了更多應(yīng)用的機(jī)會(huì),可以說(shuō),局域網(wǎng)通信工具和局域網(wǎng)二者之間相輔相成,相互促進(jìn)。我們都知道局域網(wǎng)的存在,特別是在大型企業(yè),比如銀行、公安機(jī)關(guān)等等對(duì)網(wǎng)絡(luò)安全要求特別嚴(yán)格的企業(yè)單位都會(huì)有自己的局域網(wǎng),因?yàn)榫钟蚓W(wǎng)的安全可靠,使其不容易受到網(wǎng)絡(luò)病毒的攻擊,所以局域網(wǎng)得以在企業(yè)之中廣泛應(yīng)用。WINSOCK。s life, network munication has been more and more get the favor of people. This topic is to develop an internal munication system based on UDP, local area network (LAN) can be used in a closed environment, also can be used under the environment of Internet. This software is based on vc + + development, adopt the method of software engineering, application programming technology, network technology, using the WINSOCK API interface. WINSOCK is in Windows network munication programming API interface, also is the standard of Windows network main content of the research is how to use the socket network munication program, mainly pleted the client sends a message, send pictures to show online users and many people chat, file transfer, transfer function is one of the highlights of this software system, it can realize the file transfer between two the use of chat, let distribution in different locations, a group of users will be able to use different machine exchange of information in a timely manner, in order to achieve the purpose of information sharing, so as to improve the efficiency of work or test, the software operation is simple, flexibility is good, operation is stable, can be widely used.IIKey words:UDP。關(guān)鍵字 : UDP;VC++;WINSOCK;網(wǎng)絡(luò)通信 AbstractThe early 80s, the . government39。通過(guò)聊天工具的使用,讓分布在不同地點(diǎn)、使用不同機(jī)器的一組用戶能夠及時(shí)進(jìn)行信息交流,以達(dá)到信息共享的目的,從而提高工作或者生活效率。研究的主要內(nèi)容是如何利用套接字編寫(xiě)網(wǎng)絡(luò)通信程序,主要完成了客戶端的發(fā)送信息,發(fā)送圖片與顯示在線用戶及多人聊天,文件傳輸?shù)裙ぷ?。本軟件是基于VC++,采用軟件工程的方法,應(yīng)用了程序設(shè)計(jì)技術(shù)、網(wǎng)絡(luò)技術(shù),運(yùn)用了WINSOCK相關(guān)API接口。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展及人們生活的需求,網(wǎng)絡(luò)通信已越來(lái)越受到人們的親睞。這個(gè)API稱為Socket接口(套接字)。本科畢業(yè)設(shè)計(jì)(論文) 題目名稱:基于VC++的企業(yè)內(nèi)部通信軟件的設(shè)計(jì)與實(shí)現(xiàn) 摘 要八十年代初,美國(guó)政府的高級(jí)研究工程機(jī)構(gòu)(ARPA)給加利福尼亞大學(xué)Berkeley分校提供了資金,讓他們?cè)赨NIX操作系統(tǒng)下實(shí)現(xiàn)TCP/IP協(xié)議。在這個(gè)項(xiàng)目中,研究人員為T(mén)CP/IP網(wǎng)絡(luò)通信開(kāi)發(fā)了一個(gè)API(應(yīng)用程序接口)。今天,SOCKET接口是TCP/IP網(wǎng)絡(luò)最為通用的API,也是在INTERNET上進(jìn)行應(yīng)用開(kāi)發(fā)最為通用的API。本課題是開(kāi)發(fā)一個(gè)基于UDP的企業(yè)內(nèi)部通信系統(tǒng),既可以應(yīng)用于封閉的局域網(wǎng)環(huán)境下,也可以在互聯(lián)網(wǎng)的環(huán)境下使用。WINSOCK 是在Windows進(jìn)行網(wǎng)絡(luò)通信編程的API接口,也是Windows網(wǎng)絡(luò)編程的標(biāo)準(zhǔn)。文件傳輸功能是本軟件系統(tǒng)的一個(gè)亮點(diǎn),它可以讓兩個(gè)用戶之間實(shí)現(xiàn)文件的傳遞。通過(guò)測(cè)試,本軟件操作簡(jiǎn)單,靈活性好,運(yùn)行也比較穩(wěn)定,可以廣泛使用。s Advanced Research Project agency (ARPA) to the University of California, Berkeley provided funding to enable them to achieve in the UNIX operating system, TCP / IP protocol. In this project, researchers for the TCP / IP Network Communication Development an API (application program interface). This API is called Socket Interface (socket). Today, SOCKET interface is a TCP / IP network of the most mon API, is the INTERNET application development on the most mon API.With the development of network technology and the demand of people39。VC++。Network munication目 錄摘 要 IAbstract II第1章 緒 論 1 課題選題背景 1 國(guó)內(nèi)外現(xiàn)狀分析和研究成果 1 課題研究?jī)?nèi)容及意義 2第2章 相關(guān)技術(shù)概述 3 開(kāi)發(fā)環(huán)境 3 開(kāi)發(fā)工具簡(jiǎn)介 3 Visual C++ MFC概述 3 WinSock網(wǎng)絡(luò)編程 3 Socket簡(jiǎn)介 4 開(kāi)發(fā)Windows Sockets網(wǎng)絡(luò)通信程序的軟、硬件環(huán)境 4 CSocket類(lèi)編程模型 5 Sockets程序開(kāi)發(fā)的技術(shù)要點(diǎn) 5 TCP/IP協(xié)議概述 6第3章 軟件需求分析 7 需求分析 7 功能需求分析 7 數(shù)據(jù)需求分析 7 性能需求分析 7 運(yùn)行需求分析 8 可行性分析 8 經(jīng)濟(jì)可行性分析 8 技術(shù)可行性分析 8 運(yùn)行可行性分析 8第4章 軟件系統(tǒng)設(shè)計(jì) 9 概要設(shè)計(jì) 9 基本框架設(shè)計(jì) 10 宏和數(shù)據(jù)結(jié)構(gòu)的定義 10 程序配置文件 10 調(diào)試模塊 10 主界面初始化 11 主界面布局 15 自繪按鈕 16 自繪好友列表框 18 好友管理 19 添加好友 19 刪除好友 21 與好友保持連接 22 聊天模塊 23 聊天室模塊 26 傳送文件模塊 29 共享屏幕模塊 32 白板模塊 34第5章 軟件測(cè)試 36 軟件測(cè)試的目的 36 軟件測(cè)試方法分類(lèi) 36 靜態(tài)測(cè)試與動(dòng)態(tài)測(cè)試 36 黑盒測(cè)試與白盒測(cè)試 36 測(cè)試中的錯(cuò)誤分類(lèi) 37 通訊軟件測(cè)試 38 測(cè)試用例設(shè)計(jì)要求 38 聊天模塊測(cè)試用例 38 測(cè)試總結(jié) 38結(jié) 論 40致 謝 41參考文獻(xiàn) 42附 錄 43第1章 緒 論 課題選題背景近年來(lái),隨著全球信息化的不斷發(fā)展,網(wǎng)絡(luò)也在飛速發(fā)展。然而,任何企業(yè)的內(nèi)部都是離不開(kāi)通訊的,所以企業(yè)內(nèi)部通信軟件就應(yīng)運(yùn)而生了。發(fā)展到今天,大多數(shù)企業(yè)都應(yīng)用了局域網(wǎng),可見(jiàn)其在當(dāng)今社會(huì)的重要地位。因此,為了企業(yè)更好、更安全的通訊,我想到開(kāi)發(fā)一款適用于企業(yè)的局域網(wǎng)通信軟件,恰好通過(guò)我的大學(xué)所學(xué),我有信心在老師的講解和指導(dǎo)下,很好的完成這任務(wù)。 國(guó)內(nèi)外現(xiàn)狀分析和研究成果即時(shí)通訊工具是目前使用最為普遍的網(wǎng)絡(luò)應(yīng)用軟件之一,繼出現(xiàn)在我們的計(jì)算機(jī)上之后,網(wǎng)易、新浪、搜狐等知名公司也迫不及待地加入了這一領(lǐng)域的競(jìng)爭(zhēng),而微軟、雅虎、AOL的國(guó)際巨頭公司也一刻沒(méi)有停止自己擴(kuò)張的腳步。目前,windows平臺(tái)方面的即時(shí)通訊軟件已經(jīng)很多,但是其他系統(tǒng)的比較少,例如Linux平臺(tái),雖然有類(lèi)似方面的一些產(chǎn)品,比如Linux、Lunaqq,但是數(shù)量畢竟不多且功能界面等都還不太理想;面向企業(yè)的即時(shí)通訊軟件雖然比較多,但是除了、微軟等公司的產(chǎn)品,其他的產(chǎn)品都還比較年輕,推出時(shí)間較短,且用戶較少。另外,許多企業(yè)已經(jīng)應(yīng)用了即時(shí)通訊類(lèi)產(chǎn)品作為內(nèi)部交流的平臺(tái)。還有許多企事業(yè)單位使用網(wǎng)絡(luò)個(gè)人交流工具(如,MSN),但存在許多安全隱患。隨著我們國(guó)家的信息化飛速發(fā)展,許多企事業(yè)單位信息化程度大幅度提高。 課題研究?jī)?nèi)容及意義為了保障通信安全,建設(shè)內(nèi)網(wǎng)、專(zhuān)網(wǎng)是一個(gè)解決這一問(wèn)題的方法,隨著企業(yè)業(yè)務(wù)范圍的不斷擴(kuò)大,網(wǎng)絡(luò)規(guī)模也在擴(kuò)大,采用該方案的話,成本必然非常高。用戶通過(guò)公眾信息網(wǎng)來(lái)傳輸?shù)男畔?,在傳輸?shù)倪^(guò)程中可能被竊取、篡改和偽造,信息的安全性和可靠性因此會(huì)大大的降低,所以內(nèi)網(wǎng)、專(zhuān)網(wǎng)還是不可缺少的?! ∑髽I(yè)內(nèi)部通信軟件是一個(gè)即時(shí)通信工具。第2章 相關(guān)技術(shù)概述 開(kāi)發(fā)環(huán)境本節(jié)主要介紹本軟件系統(tǒng)的開(kāi)發(fā)環(huán)境,以及運(yùn)用的編程工具等。他是一款面向?qū)ο蟮墓δ軓?qiáng)大的可視化編程開(kāi)發(fā)工具。其中的MFC庫(kù)集成了Windows Sockets API應(yīng)用程序接口,使得用戶可以用面向?qū)ο蟮姆椒ㄖ苯诱{(diào)用。 Visual C++ MFC概述MFC(Microsoft Foundation Class Library)庫(kù)是Microsoft公司基于Windows的C++應(yīng)用程序編程接口,是Visual C++中編寫(xiě)Windows應(yīng)用程序的首選方法。使用MFC,可以在任何時(shí)候調(diào)用Win32函數(shù)、最大程度地利用Windows。MFC中的各種類(lèi)結(jié)合起來(lái)構(gòu)成了一個(gè)應(yīng)用程序框架,它的目的就是讓程序員在此基礎(chǔ)上來(lái)建立Windows下的應(yīng)用程序,這是一種相對(duì)SDK來(lái)事更為簡(jiǎn)單的方法。 WinSock網(wǎng)絡(luò)編程Windows Sockets是從Berkeley Sockets擴(kuò)展而來(lái)的,其在繼承Berkeley Sockets的基礎(chǔ)上,又進(jìn)行了新的擴(kuò)充。Windows Sockets由兩部分組成:開(kāi)發(fā)組件和運(yùn)行組件。運(yùn)行組件:Windows Sockets 應(yīng)用程序接口的動(dòng)態(tài)鏈接庫(kù)()。90年代初,由Sun Microsystems,JSB Corporation,F(xiàn)TP software,Microdyne和Microsoft等幾家公司共同制定了一套標(biāo)準(zhǔn),即Windows Sockets規(guī)范。這些擴(kuò)充主要是提供了一些異步函數(shù),并增加了符合Windows消息驅(qū)動(dòng)特性的網(wǎng)絡(luò)事件異步選擇機(jī)制。Socket實(shí)際上是指一個(gè)通信端點(diǎn),借助于它,用戶所開(kāi)發(fā)的Socket應(yīng)用程序,可以通過(guò)網(wǎng)絡(luò)與其它Socket應(yīng)用程序進(jìn)行通信?!¢_(kāi)發(fā)Windows Sockets網(wǎng)絡(luò)通信程序的軟、硬件環(huán)境所采用的操作系統(tǒng)軟件可以是Windows XP,Windows 7,因?yàn)樗鼈兌贾С諻indows Sockets API,在以下的介紹中,我們將以在Windows XP環(huán)境下的開(kāi)發(fā)為例。Visual C++ XP或Windows 7環(huán)境下運(yùn)行,其開(kāi)發(fā)系統(tǒng)增加了全面集成的基于Windows 的開(kāi)發(fā)工具以及一個(gè)基于傳統(tǒng)C/C++開(kāi)發(fā)過(guò)程的“可視化”用戶界面驅(qū)動(dòng)模型。在有關(guān)套接字方面,Visual C++ Sockets庫(kù)函數(shù)進(jìn)行了一系列封裝,繼而產(chǎn)生了CSocket 、CSocketFile等類(lèi),它們封裝著有關(guān)Socket的各種功能。Windows XP和Windows 7都帶有該協(xié)議。Windows Sockets API則可直接與TCP/IP核心進(jìn)行溝通。 C