freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

聊天系統(tǒng)客戶端的設(shè)計(jì)與實(shí)現(xiàn)本科生畢業(yè)設(shè)計(jì)論文-全文預(yù)覽

2025-08-09 20:21 上一頁面

下一頁面
  

【正文】 t m_imaLarge。當(dāng)前用戶的運(yùn)行目錄(是 ID的數(shù)字串為目錄) CString m_strServerIP。 當(dāng)前讀到的被別人加為好友的信息的位置(索引) CClientSocket m_Socket。 //當(dāng)前讀到的系統(tǒng)消息的位置(索引) CArraySaveMsg*,SaveMsg*m_aBroadcast。//存儲(chǔ)陌生人信息的數(shù)組 CArrayFriendState*,FriendState*m_aUserState。 BOOL m_bOnlineState。 afx_msg void OnAppExit()。 //啟動(dòng)服務(wù) afx_msg void OnUpdateStartServer(CCmdUI* pCmdUI)。 //本計(jì)算機(jī)的 IP 地址字符串 public: virtual BOOL InitInstance()。 //發(fā)廣播消息的密碼 CString m_strDataSource。 //聯(lián)接數(shù)據(jù)庫需要的字符串參數(shù) int m_nNumberOnline。 //發(fā)送一次數(shù)據(jù)的超時(shí)時(shí)間 BOOL m_bServerStarted。 CServerSocket m_Socket。其中,類CModifyPersonPI 的算法與其它類不大一樣,因?yàn)樗某蓡T中有一個(gè)位掩 Mask 成員,只有被選中的成員,才會(huì)打包入串。 算法描述: 定義的基類,提供了數(shù)據(jù)的一種統(tǒng)一的接口,其派生類再對(duì)其虛函 數(shù)進(jìn)行重載,實(shí)現(xiàn)相應(yīng)的功能。 因?yàn)樵诳蛻舳?,大部分?jǐn)?shù)據(jù),是在某個(gè)消息處理函數(shù)中執(zhí)行的,所以,適用于服務(wù)器的 SendData 發(fā)送數(shù)據(jù)函數(shù),在客戶端,若是在消息處理函數(shù) 中發(fā)送,函數(shù)返回值,將永遠(yuǎn)為 FALSE,于是就添加了一個(gè) SendDataInThread 函數(shù),把發(fā)送數(shù)據(jù)的過程放在線程里執(zhí)行,通過發(fā)消息的手段,來返回結(jié)果。 算法描述: 發(fā)送一個(gè)數(shù)據(jù),需要等待響應(yīng)信息的回來,如果在規(guī)定時(shí)間內(nèi),還沒有收到確認(rèn)信息,則認(rèn)為發(fā)送數(shù)據(jù)丟失,將重試 FailReDoTime 次,如果還是沒有確認(rèn)信息發(fā)送回來,則返回發(fā)送失敗,否則,返回發(fā)送成功。 偵聽類結(jié)構(gòu): class CRecvSocket 發(fā)送數(shù)據(jù)的 socket 類結(jié)構(gòu) : class CSendSocket : 服務(wù)器的 socket 類 : CServerSocket 這個(gè)通訊類的 SendData,當(dāng)發(fā)送數(shù)據(jù)失敗時(shí),可以重發(fā)幾次,次數(shù)可由用戶來確定 客戶端 底層通訊類設(shè)計(jì) 與客戶端上層的接口是 CClientSocket 類,它隱藏了服務(wù)器底層通訊的細(xì)節(jié)及多線程發(fā)送數(shù)據(jù)的問題,提供給上一層一個(gè)統(tǒng)一的接口, CClientSocket 類的使用,是先建立一個(gè)它的實(shí) 例,再調(diào)用成員函數(shù) Create()傳入必要的參數(shù),發(fā)送數(shù)據(jù)時(shí),就調(diào)用其成員函數(shù) SendData,或 SendDataInThread 處理發(fā)送數(shù)據(jù),在 CRecvSocket 類的 OnReceive里處理,向父窗口發(fā)送一個(gè) WM_RECIEVE_MSG 消息,并把接受到的數(shù)據(jù)作為參數(shù)傳遞給父窗口。 CRecvSocket 和 CsendSocket 都是從 CAsyncSocket 類里繼承而來,分別處理偵聽請(qǐng)求各發(fā)送數(shù)據(jù),在 CServerSocket 類里,定義了幾個(gè) CRecvSocket 和 CSendSocket 對(duì)象的實(shí)例,通過 CServerSocket 類對(duì)內(nèi)部進(jìn)行組織和管理,提供給上層的接口是CServerSocket,它隱藏了服務(wù)器底層通訊的細(xì)節(jié)及多線程發(fā)送數(shù)據(jù)的問題,提供給上一層一個(gè)統(tǒng)一的接口, CServerSocket 類的使用,是先建立一個(gè)它的實(shí)例,再 調(diào)用成員函數(shù) Create(),傳入必要的參數(shù),發(fā)送數(shù)據(jù)時(shí),就調(diào)用其成員函數(shù) SendData,處理接受數(shù)據(jù),在 CRecvSocket 類的 OnReceive 里處理,調(diào)用了一個(gè)名為 ProcessRecvData 的線程函數(shù),用戶在這個(gè)線程函數(shù)里寫上具體的處理代碼 算法描述: 本科生畢業(yè)設(shè)計(jì)(論文) 16 發(fā)送一個(gè)數(shù)據(jù),需要等待響應(yīng)信息的回來,如果在規(guī)定時(shí)間內(nèi),還沒有收到確認(rèn)信息,則認(rèn)為發(fā)送數(shù)據(jù)丟失,將重試 FailReDoTime 次,如果還是沒有確認(rèn)信息發(fā)送回來,則返回發(fā)送失敗,否則,返回發(fā)送成功。 CfriendDetailDlg 顯示用戶詳細(xì)信息的對(duì)話框類 本科生畢業(yè)設(shè)計(jì)(論文) 15 CloginDlg 顯示登陸窗口的對(duì)話框類 ClookDlg 顯示查看消息的對(duì)話框類 CregisterDlg 顯示注冊(cè)窗口的對(duì)話框類 CsetupServerDlg 修改服務(wù)器設(shè)置的對(duì)話框 CtalkDlg 顯示發(fā)送消息對(duì)話框的類 CshowBroadcastDlg 顯示廣播消息的對(duì)話框 CshowAddMsgDlg 顯示被加為好友的信息的對(duì)話框 CmultiSendDlg 通過姓名或 ID 列表的向多人發(fā)送信息的對(duì)話框 CsendToAllDlg 向所有好友發(fā)送消息的對(duì)話框 CModifyPIDlg 修改個(gè)人信息的對(duì)話框 CGfxGroupEdit,CGfxOutBarCtrl,CGfxPopupMenu 實(shí)現(xiàn)像 OutBar 和 oicq 樣式的那種滾動(dòng)分欄的界面類,從 Inter,上獲得的源代碼,通過修改一些接口,使之更適合我的應(yīng)用。 Tel 的通用口分配是端口號(hào) 23。 Inter 包括像 FTP、 Tel 和 Mail 這樣廣泛使用的應(yīng)用程序采用的應(yīng)用協(xié)議,在 Inter 上,這些應(yīng)用程序使用一種叫做“通用口分配”的端口。在 PC 機(jī), LPT1 表示并行端口 1。例如為了打印,如果沒有其它程序的話,必須向串或并端口發(fā)送數(shù)據(jù)。 在 TCP/IP 術(shù)語中,端口類( Port)似于 IP 地址, IP 地址與主機(jī)地址是相聯(lián)系的,端口和協(xié)議相聯(lián)系。數(shù)據(jù)報(bào)類似于信件。如果應(yīng)用程序使用字節(jié)流協(xié)議發(fā)送數(shù)據(jù),則協(xié)議能夠保證連接的另一端按照發(fā)送的順序接收數(shù)據(jù)。例如,假設(shè)你使用字節(jié)流協(xié)議 發(fā)送 5 個(gè)數(shù)據(jù)段(每個(gè)有 10字節(jié))和一個(gè)包含 50 字節(jié)的數(shù)據(jù)段(總共 100字節(jié))。 TCP/ IP 協(xié)議組中存在的兩個(gè)基本數(shù)據(jù)服務(wù)是:字節(jié)流服務(wù)和數(shù)據(jù)報(bào)服務(wù),使用字節(jié)流的協(xié)議將信息看作一串字節(jié)流進(jìn)行傳輸。而且,不可靠協(xié)議在傳輸失敗后,并不通知發(fā) 送方應(yīng)用程序。如果不匹配,就表明在傳輸過程中發(fā)生了錯(cuò)誤。也就是說,程序每次發(fā)送-個(gè)報(bào)文時(shí),都期望 對(duì)方發(fā)送一個(gè)相當(dāng)于說:“我得到這個(gè)報(bào)文”的確認(rèn)信息。協(xié)議可以是可靠的可以是不可靠的。 ARP 地址解析協(xié)議( Address Resolution Protocol),負(fù)責(zé)將網(wǎng)絡(luò)層地址轉(zhuǎn)換成鏈路層地址。這個(gè)協(xié)議族包括幾種工作在不同層次上的網(wǎng)絡(luò)協(xié)議, IP 互連協(xié)議( Inter Protocol),負(fù)責(zé)本科生畢業(yè)設(shè)計(jì)(論文) 12 主機(jī)之間的傳輸數(shù)據(jù)。也就是說,類似服務(wù)器程序,無連接客戶程序告訴 Socket 執(zhí)行體使用哪個(gè)協(xié)議端口進(jìn)行數(shù)據(jù)傳輸。使用無連接協(xié)議的程序不和遠(yuǎn)地主機(jī)建立直接連接。例如,無連接和連接服務(wù)器程序必須在協(xié)議端口偵聽客戶請(qǐng)求。當(dāng)服務(wù)器配置 socket 接口時(shí),它使用 bind()函數(shù)讓 socket 執(zhí)行體登記一個(gè)協(xié)議端口。這些術(shù)語指出了兩個(gè) TCP/IP傳輸協(xié)議:用戶數(shù)據(jù)包協(xié)議( UDP)和傳榆控制協(xié)議( TCP)之間的區(qū)別。 通常,網(wǎng)絡(luò)應(yīng)用程序包含兩個(gè)獨(dú)立的應(yīng)用程序:客戶程 序和服務(wù)器程序。在 TCP/IP 網(wǎng)絡(luò)應(yīng)用中,多數(shù)網(wǎng)絡(luò)應(yīng)用程序是使用 C/S模型設(shè)計(jì)的。) 本系統(tǒng)的 實(shí)體 圖如下圖所示: 圖 22 用戶信息 用戶信息自動(dòng)編號(hào) 用戶賬號(hào) 登錄密碼 驗(yàn)證好友本科生畢業(yè)設(shè)計(jì)(論文) 8 圖 23 好友信息 圖 24 離線消息 服務(wù)器數(shù)據(jù)庫設(shè)計(jì) 服務(wù)器數(shù)據(jù)庫設(shè)計(jì)的要求是要能夠滿足客戶端的需求,保存用戶信 息和用戶好友信息,提供離線消息的服務(wù),和發(fā)廣播消息的服務(wù)等。 ,表示實(shí)體類型和聯(lián)系類型的屬性。它有兩個(gè)明顯的優(yōu)點(diǎn):接近于人的思維,容易理解;與計(jì)算機(jī)無關(guān),用戶容易接受。 在系統(tǒng)設(shè)計(jì)的開始,我首先考慮的是如何用數(shù)據(jù)模型來數(shù)據(jù)庫的結(jié)構(gòu)與語義,以對(duì)現(xiàn)實(shí)世界進(jìn)行抽象。各模塊功能如下圖 21所示: 圖 21 聊天系統(tǒng)模塊 聊天系統(tǒng)客戶端查找用戶 查找在線用戶 發(fā)群體消息 系統(tǒng)參數(shù) 個(gè)人設(shè)定 關(guān)于本科生畢業(yè)設(shè)計(jì)(論文) 7 在信息世界中,信息從客觀事物出發(fā)流經(jīng)數(shù)據(jù)庫,通過決策機(jī)構(gòu)最后又回到客觀世界,信息的這一循環(huán)經(jīng)歷了三個(gè)領(lǐng)域:信息世界,數(shù)據(jù)世界,現(xiàn)實(shí)世界。然后等待服務(wù)器的響應(yīng)。根據(jù)用戶 的 操作,可以向好友發(fā)送消息,查看好友信息,查看在線的人,查找用戶 等等功能。登陸時(shí),可選擇是否隱身,進(jìn)入系統(tǒng)后,好友列表中,在線的人,將以高亮度顯示,并處在列表的上頭。這樣,可以實(shí)時(shí)接受每個(gè)用戶的請(qǐng)求,不會(huì)因?yàn)樘幚硪粋€(gè)用戶的請(qǐng)求,而忽略了其它用戶。 為了保存用戶信息和好友信息及一些相關(guān)數(shù)據(jù),服務(wù)器使用到數(shù)據(jù)庫技術(shù)。 設(shè)計(jì) 原理 概述 采用客戶端 —— 服務(wù)器模型 ,使用從 MFC類中的 CAsyncSocket類的派生類進(jìn)行實(shí)現(xiàn)底層通訊,底層利用 UDP 數(shù)據(jù)報(bào)協(xié)議進(jìn)行通訊,這樣,便于客戶端之間的直接通訊,也可以高效的傳送消息。 更改個(gè)人信息 。 好友下線更新 。 支持隱身登陸,可以看到在線的朋友,朋友卻不知道 你上線。 提供消息、聊天的歷史記錄,方便對(duì)信息的查看和管理 。 具體列舉如下: 支持多賬號(hào) 。淘汰它的只能是更發(fā)達(dá)的聊天技術(shù),本科生畢業(yè)設(shè)計(jì)(論文) 4 即語音聊天。 網(wǎng)絡(luò)聊天同樣具有傳統(tǒng)聊天的基本功能,即消閑的作用,它也同樣可以交流情感、促進(jìn)友誼、傳遞信息,滿足表達(dá)欲望。更不要說電視的非人格化與聊天富有人情味的區(qū)別。 由于電視的誘惑,傳統(tǒng)聊天被迫讓出了它在人類生活中的地位。聊天作為一種消閑手段廉價(jià)而富有人情味,很適合人類這種擁有語言能力的高等群居動(dòng)物。 傳統(tǒng)聊天是指在任何現(xiàn)代通訊技術(shù)出現(xiàn)之前人類最尋常的交流方式,即面對(duì)面 地對(duì)話。但是有服務(wù)器的通訊軟件,有著不可比擬的優(yōu)勢(shì):可以發(fā)送離線消息,不管用戶當(dāng)時(shí)是否在線,下次上線時(shí),就可以看到這條消息了。 國(guó)內(nèi)外 發(fā)展概況 國(guó)內(nèi)外發(fā)展概況 伴隨著網(wǎng)絡(luò)的發(fā)展,已經(jīng)有大量的聊天類軟件進(jìn)入了實(shí)用階段,例如現(xiàn)階段大家經(jīng)常使用的 , ICQ 和 MSN 等,他們已經(jīng)融入到大家的網(wǎng)絡(luò)生活中,成為大家網(wǎng)絡(luò)生活中必不可少的組成部分。 傳統(tǒng)的軟件工程方法有生命周期方法和快速原型法。該系統(tǒng)要求 實(shí)現(xiàn) : 、規(guī)范化和自動(dòng)化 ; ,登陸界面和注冊(cè)界面等 ; 、下線、接收消息和發(fā)送消息等 ; TCP 連接實(shí)現(xiàn)與服務(wù)器端進(jìn)行良好的協(xié)作與通信; IP連接,與其他客戶端進(jìn)行信息的收發(fā); 各個(gè)界面的設(shè)計(jì) 合理、實(shí)用 。那些寂寞無助的 “ 亞細(xì)亞的孤兒 ” 們忽然發(fā)現(xiàn)了這一巨大的狂歡場(chǎng)所,更有甚于電子游戲帶給他們的新奇和喜悅。自從我們順應(yīng)現(xiàn)代工業(yè)的潮流,從平房搬入樓房之后,在享受自動(dòng)的水、電、煤氣之時(shí),我們也失去了舊日街坊鄰里聚在一起 群聚而談的熱鬧和溫情??傊@種軟件在網(wǎng)絡(luò)上,還是有很大的用途的,為網(wǎng)絡(luò)上通訊,帶來極大的方便。 現(xiàn)在也有很多,在網(wǎng)絡(luò)上不使用服務(wù)器的通訊軟件,這種軟件小巧且方便,也能解決一部分問題。如果要使本系統(tǒng)成為一個(gè)實(shí)際應(yīng)用系統(tǒng)并在網(wǎng)絡(luò)上實(shí)際應(yīng)用 ,還要再下一番功夫進(jìn)行設(shè)計(jì)。 本文主要是對(duì)本軟件服務(wù)器端的設(shè)計(jì)作了比較詳細(xì)的介紹,并對(duì)服務(wù)器端進(jìn)行了初步的開發(fā)。本程序是一個(gè)基于 C/S模式的網(wǎng)絡(luò)聊天程序,主要用于測(cè)試面向連接的 socket編程技術(shù)。在網(wǎng)絡(luò)編程中最常用的方案便是 C/S模型。需要注意的是本程序 C/S端合一的模式和 服務(wù)器 地址 、服務(wù)器端口號(hào)固定以及自動(dòng)申請(qǐng) 用戶登陸 ID的設(shè)計(jì) 不 只為 了方便測(cè) 試,而且適宜商業(yè)化,但是 在商業(yè)化階段 還是 需要進(jìn)行改進(jìn) 。而且,由于時(shí)間關(guān)系,客戶端還有些功能沒有完全。 本文討論基于 TCP/IP 通信開發(fā)聊天程序的關(guān)鍵技術(shù) ,重點(diǎn)討論 面向?qū)ο蠓椒?以及聊天程序的實(shí)現(xiàn)方法 ,并給出了相應(yīng)的 VC++代碼 . 網(wǎng)絡(luò)聊天軟件在國(guó)外的有 icq 等,在國(guó)內(nèi)的主要有騰訊的 Oicq,還有 Ticq,OmO 和一些在網(wǎng)頁上的即時(shí)通訊工具,像 Chinaren 網(wǎng)站上的 WebMaster 等等,都做得即美觀,且功能強(qiáng)大, Oicq 現(xiàn)在擁有非常大的用戶群。而且,那種通訊軟件,是以機(jī)器為通訊單 元的,而這種聊天軟件是以人為通訊單元。 意義 以前聊天的方式早已離我們遠(yuǎn)去。在人情淡薄懷舊氣氛濃重的九十年代末期,網(wǎng)絡(luò)聊天出現(xiàn)了。 任務(wù) 、 要求及問題提出 、要求 本設(shè)計(jì)基于 TCP/IP 通信開發(fā)聊 天程序,綜合利用 VC++程序設(shè)計(jì)語言,以 SQL 本科生畢業(yè)設(shè)計(jì)(論文) 2 Server20xx 數(shù)據(jù)庫做后臺(tái)開發(fā)出一高效實(shí)用的聊天系統(tǒng)客戶端軟件。由于采用面向?qū)ο蟮南到y(tǒng)模型可以使整個(gè)
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1