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

正文內容

基于局域網(wǎng)的聊天軟件的設計與實現(xiàn)-在線瀏覽

2025-02-01 10:20本頁面
  

【正文】 nWidth, int nHeight, HDC hdcSrc, int nXSrc, int nYSrc,DWORD dwRop )函數(shù)可以實現(xiàn)該功能,具體用法可參考 MSDN。為了實現(xiàn)像 那樣的界面,必須將對話框的屬性設置為 None 屬性,即沒有標題欄,因此只有自己去實現(xiàn)標題欄的功能。另外一種就是 Customdraw 屬性,通過定義自繪消息響應函數(shù)來進行重繪。而后者相對比較簡便,系統(tǒng)會在四個狀態(tài)的時候通知重繪,這四 個狀態(tài)分別是繪制前,繪制后,擦除前,擦除后,我們就可以按照自己的需要去繪制,并且我們只用考慮其中一項 item 的繪制方 基于局域網(wǎng)的聊天軟件的設計與實現(xiàn) 5 法,就可以應用于所有項。 對于 VC6 開發(fā)環(huán)境,微軟提供的通用 button 控件的外觀從現(xiàn)在看來的確不太美觀,無法實現(xiàn)動態(tài)狀態(tài)的效果。狀態(tài)分為移出按鈕,懸浮按鈕,按下按鈕,禁用按鈕四 種狀態(tài),我們只需要提供相應的狀態(tài)的 Bitmap 就可以。而捕獲鼠標的移入移出消息可以使用 _TrackMouseEvent 函數(shù),通過設置 TRACEMOUSEEVENT 結構體的值來捕捉該消息。 Winsock 編程 Windows 下網(wǎng)絡編程的規(guī)范- Windows Sockets 是 Windows 下得到廣泛應用的、開放的、支持多種協(xié)議的網(wǎng)絡編程接口。其 通信的基礎是套接 字 ( Socket),一個套接 字 是通訊的一端。一個正在被使用的套接字都有它的類型和與其相關的進程。通訊域是為了處理一般的線程通過套接字通訊而引進的一種抽象概念。 Windows Sockets 規(guī)范支持單一的通訊域,即 Inter域。套接字可以根據(jù)通訊性質分類;這種性質對于用戶是可見的。不過只要底層的通訊協(xié)議允許,不同類型的套接字間也照樣可以通訊。流套接字提供了雙向的,有序的,無重復并且無記錄邊界的數(shù)據(jù)流服務。也就是說,一個從數(shù)據(jù)報套接字接收信息的進程有可能發(fā)現(xiàn)信息重復了,或者和發(fā)出時的順序不同。對于這一特點,數(shù)據(jù)報套接字采用了與現(xiàn)在許多包交換網(wǎng)絡(例如以太網(wǎng))非常類似的模型 。 在設計階段,需分析該軟件適用于什么樣的地協(xié)議進行通訊,還必須分析該系統(tǒng)應該適合于何種套接 字 IO 操作。 由于是基于 UDP 協(xié)議,并且考慮到在同一時間處理得命令并不會很大的情況,服務器和客戶端均采用基于非阻態(tài)的 IO模型實現(xiàn)命令的傳輸。CAsyncSocket 的 Create()函數(shù),除了創(chuàng)建了一個 SOCKET 以外,還創(chuàng)建了個CSocketWnd 窗口對象,并使用 WSAAsyncSelect()將這個 SOCKET 與該窗口對象關聯(lián),以讓該窗口對象處理來自 Socket 的事件 (消息 ),然而 CSocketWnd 收到Socket 事件之后,只是簡單地回調 CAsyncSocket::OnReceive()等虛函數(shù)。 因此介于微軟提供的強大類方法,就很容易實現(xiàn)數(shù)據(jù)的通信。為了提高傳輸速度,我們可以采用 UDP 協(xié)議來傳輸文件,由于 UDP 協(xié)議傳輸?shù)臄?shù)據(jù)不具有可靠性,在網(wǎng)絡環(huán)境差的地方很容易出現(xiàn)丟包,亂序等現(xiàn)象,直接采用 基于局域網(wǎng)的聊天軟件的設計與實現(xiàn) 7 UDP 來傳輸文件是不行的,那么就必須采用某種算法對其傳輸?shù)目煽啃赃M行保證。實際上, TCP的三次握手的確讓通訊數(shù)據(jù)得到了有序,有效地保證,但是正是因為這樣繁瑣的數(shù)據(jù)驗證,導致它傳輸大量數(shù)據(jù)效率低下,在 TCP 實現(xiàn)內部,實際上是采用了窗口大小為 1 的滑動窗口算法進行數(shù)據(jù)驗證,因此, UDP 可以借于此思想,采用滑動窗口算法和 CRC 冗余效驗來保證數(shù)據(jù)的有效性,同時也會提高傳輸?shù)乃俣?。為了保證 速度,就會造成網(wǎng)絡擁塞,為了網(wǎng)絡的暢通,就不能保證速度,兩種傳輸方式的各據(jù)優(yōu)劣勢。多線程編成雖說是基礎,但是卻是一個難點,因為線程同步的確比我們想象的復雜得多。 什么是多任務概念?用通俗易懂的話就是幾個運行的任務“同時”進 行,比如 Windows 就是典型的多任務操作系統(tǒng),我們可以同時進行聽歌,打游戲,聊,在基于這種理念的系統(tǒng)感覺就像所有的程序在同時運行一樣。由于電腦的速度很快,這種非并發(fā)的模式卻可以達到類似并發(fā)的效果。因此,在多任務操作系統(tǒng)中(若有線程的話),線程將是運行的最小單位。那么進程和線程有什么區(qū)別和聯(lián)系呢?進程實際就是一個運 基于局域網(wǎng)的聊天軟件的設計與實現(xiàn) 8 行的程序,該程序有自己的堆??臻g,有自己的線程(至少有一個主線程),并且可以創(chuàng)建其它進程或線程。 在 iMessaging 程序里,涉及了諸多對線程的創(chuàng)建,管理和銷毀工作,特別是在服務器部分,為了保證數(shù)據(jù)響應的即時性,必須對每一個處理創(chuàng)建一個線程。除此之外,還可以傳遞參數(shù),供線程使用。常用的銷毀線程函數(shù)是 ExitThread,TermelateThread 函數(shù),但推薦使用函數(shù)返回的方式結束進程,因為操作系統(tǒng)會自動調用 ExitThread 函數(shù),并回收分配的內存資源。在 iMessaging 聊天程序中,最常用的是臨界區(qū),原因是基于用戶模式,同步效率快,服務器可以進行更多的操作,其次還用到了事件對象,由于臨界區(qū)太過單一的功能,并不能滿足有些數(shù)據(jù)同步的需要,因此用到了功能強大的事件對象,在 MFC中,事件對象被封裝成了 CEvent類,在 SDK 下,可以用調用 CreateEvent API 函數(shù)創(chuàng)建一個事件對象。那么為了解決這個問題,就必須了解何謂信任的 IP 和端口。由于 iMessaging 聊天程序的服務器是所有客戶端的受信任者,因此,服務器可以發(fā)送任何信息給客戶端。原理可以簡述為,若客戶端 A 無法與另一客戶端 B通訊, A可以向服務器發(fā)送打洞請求,讓服務器告知 B客戶端 A此時要與你進行通訊,你必需將其 A 添加到你的受信任列表里。 iMessaging 在客戶端聊天模塊部分添加了該功能,但由于服務器環(huán)境的限制,暫時沒有測試環(huán)境。 1. 注冊會員。注冊時填寫基本信息,注冊成功后服務器會返回一個唯一的 iM 賬號。會員可以通過查詢 iM 會員,添加自己的好友,成為好友后,兩會員便可以自由的通訊 ,還可以實現(xiàn)后續(xù)的多種功能。會員可以與自己所有的好友進行聊天,同時可以打開多個好友的對話框窗口進行文本聊天。好友與好友之間可以互相傳送文件,同時可以發(fā)送多個文件。會員有創(chuàng)建新群的功能,創(chuàng)建新群后,自身默認為該群的管理員。非群會員可以申請加入某個已存在的群,若該群的管理員批準了該申請,該會員便成為該群的一員。群里的所有成員的聊天都是公開的,即該群所有成員能看到群里所有的發(fā)送的消息。若發(fā)送的好友當時處于離線狀態(tài),發(fā)送的內容或請求將保存在服務 器里,待該好友登陸后,再發(fā)送過去。開發(fā)該軟件,應具備一定的 windows 編成基礎,熟悉常用的 API 函數(shù),深入了解 MFC框架和窗口重繪技術。另外,還應具備多線程編程,線程同步,數(shù)據(jù)庫操作的基本知識和技術。因此,在技術上是可行的。界面簡潔,大方,美觀,操作簡單,便捷。 經濟可行性 在開發(fā)成本上,除了在設計界面上, 制作圖片上可能需要專業(yè)的人士進行制作,會造成一定的經濟開銷。若僅局限在局域網(wǎng)里使用本軟件,那經濟成本較低,具有經濟可行性。 系統(tǒng)業(yè)務流程分析 業(yè)務流程圖的圖形表示的意義: 業(yè)務處理單位 / 個人 表格 / 報表信息傳遞過程 會員處理業(yè)務流程圖 用 戶會 員 信 息 表登 陸 驗 證會 員 1驗 證 成 功會 員 信 息 表注 冊會 員 信 息 表群 信 息 表好 友 關 系 表群 關 系 表添 加 好 友查 詢 群查 詢 好 友加 入 群聊 天 信 息發(fā) 送 消 息會 員 2傳 送 消 息文 件 數(shù) 據(jù)傳 送 數(shù) 據(jù)傳 送 文 件創(chuàng) 建 群更 新 信 息日 志 信 息 表記 錄 登 出 信 息記 錄 登 陸 信 息離 線 消 息 表獲 取 離 線 消 息 圖 會員處理業(yè)務流程圖 基于局域網(wǎng)的聊天軟件的設計與實現(xiàn) 12 系統(tǒng)數(shù)據(jù)流程分析 頂層數(shù)據(jù)流程圖 D 2 發(fā) 送 信 息D 5 接 受 信 息P 1各 種 操 作D 3 接 受 信 息D 4 發(fā) 送 信 息S 2 會 員 S 3 后 臺S 1 用 戶D 1 登 陸 信 息P 2好 友 操 作S 4 會 員D 6 發(fā) 送 消 息D 9 接 受 消 息D 8 發(fā) 送 消 息D 7 接 受 消 息 圖 數(shù)據(jù)總流程圖 基于局域網(wǎng)的聊天軟件的設計與實現(xiàn) 13 第一層數(shù)據(jù)流程圖 S 1 用 戶P 1 登 陸D 1 登 陸 信 息F 1 會 員 信 息 表D 2 驗 證 信 息S 2 會 員D 3 登 陸 成 功 信 息P 5 查 詢 好 友P 4 查 詢 群P 6創(chuàng) 建 群P 7更 新 信 息P 3 添 加 好 友P 8加 入 群F 1 會 員 信 息 表P 2 注 冊 會 員D 1 8 注 冊 信 息D 4 注 冊 信 息D 5 待 添 加 好 友 信 息D 7 查 詢 群 信 息D 9 查 詢 好 友 信 息D 8 群 信 息D 1 0 會 員 信 息D 1 1 待 加 入 的 群 信 息F 4 群 關 系 表D 1 2 群 關 系 信 息F 1 會 員 信 息 表F 2 群 信 息 表F 1 會 員 信 息 表F 2 群 信 息 表F 3 好 友 關 系 表D 6 好 友 關 系 信 息D 8 群 信 息D 1 0 會 員 信 息D 8 群 信 息D 1 0 會 員 信 息P 9好 友 聊 天P 1 0文 件 傳 輸D 1 4 文 件 信 息D 1 3 聊 天 信 息S 2 會 員D 1 3 聊 天 信 息 D 1 4 文 件 信 息F 6 日 志 記 錄 表登 陸 信 息F 5 離 線 消 息 表D 4 離 線 消 息P 1 1群 聊 天F 2 群 信 息 表D 1 7 群 成 員 信 息D 1 6 群 信 息D 1 5 群 聊 天 信 息 圖 iMessaging 會員操作數(shù)據(jù)流程圖 第二層數(shù)據(jù)流程圖 基于局域網(wǎng)的聊天軟件的設計與實現(xiàn) 14 S 1 . 1 用戶P 1 . 1傳 輸 登 陸信 息S 1 . 2 后臺P 1 . 2賬 號 驗 證F 1 會 員 信 息 表S 1 . 3 會員F 3 好 友 關 系 表P 1 . 4 獲 取 好 友信 息D 1 . 1 登 陸 數(shù) 據(jù)D 1 . 1 登 陸 數(shù) 據(jù) D 1 . 2 驗 證 數(shù) 據(jù) D 1 . 4 驗 證 合 格 信 息D 1 . 7 獲 取 好 友 命 令D 1 . 3 會 員 信 息D 1 . 8 好 友 信 息F 1 會 員 信 息 表P 1 . 3獲 取 群 信息D 1 . 6 獲 取 群 信 息 命 令P 1 . 7 其 他 處 理D 1 . 1 4 其 他 操 作 信 息F 2 群 信 息 表 F 4 群 關 系 表D 1 . 9 群 信 息P 1 . 6獲 取 離 線信 息F 5 離 線 關 系 表D . 1 3 離 線 消 息D 1 . 1 2 獲 取 離 線 消 息 命 令P 1 . 5更 新 日 雜記 錄 表D . 1 0 登 陸 信 息F 6 日 志 記 錄 表D . 1 1 更 新 信 息 圖 會員登陸數(shù)據(jù)流程圖 F 1 會 員 信 息 表S 2 . 1 用 戶P 2 . 1發(fā) 送 注 冊 會 員信 息D 2 . 1 注 冊 信 息S 2 . 2 后 臺D 2 . 1 注 冊 信 息P 2 . 2更 新 會 員 信 息表D 2 . 2 會 員 信 息 D 2 . 3 更 新 信 息P 2 . 3返 回 注 冊 信 息D 2 . 4 反 饋 信 息D 2 . 4 反 饋 信 息 圖 基于局域網(wǎng)的聊天軟件的設計與實現(xiàn) 15 S 3 . 1 會 員P 3 . 1發(fā) 送 好 友 請 求D 3 . 1 好 友 請 求 信 息S 3 . 2 后 臺D 3 . 2 好 友 請 求 信 息F 1 會 員 信 息 表D 3 . 3 好 友 信 息S 3 . 3 會 員P 3 . 2發(fā) 送 好 友 請 求D 3 . 5 請 求 信 息D 3 . 4 請 求 信 息D 3 . 6 回 應 信 息P 3 . 3回 應 請 求D 3 . 7 回 應 信 息F 1 好 友 關 系 表D 3 . 8 好 友 關 系 信 息 圖 添加好友數(shù)據(jù)流程圖 S 4 . 1 會 員P 4 . 1發(fā) 送 加 入 群 請求D 4 . 1 加 入 群 請 求 信 息S 4 . 2 后 臺D 4 . 2 加 入 群 請 求 信 息F 2 群 信 息D 4 . 3 管 理 員 信 息S 4 . 3 會 員P 3 . 2發(fā) 送 群 請 求D 4 . 5 請 求 信 息
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1