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

正文內(nèi)容

基于socket的即時通訊軟畢業(yè)設(shè)計40論文41-在線瀏覽

2025-01-26 16:04本頁面
  

【正文】 and study. Because of its friendly outward appearance, the formidable function, the use convenience, the relation prompt and so on the characteristic wins modern people39。 現(xiàn)在,企業(yè)、機關(guān)、學校都紛紛建立起自己的局域網(wǎng)。首先,在局域網(wǎng)里的網(wǎng)上鄰居里,只能看到機器名,不清楚對方是誰,也不知道對方機器里有什么資源可以共享,而且當局域網(wǎng)內(nèi)的機器很多時,這種方式更加麻煩。在學校 的 校園網(wǎng)里,這軟件可以起到方便同學之間、教師之間、師生之間相互聯(lián)絡(luò)的作用。 課題的目的 現(xiàn)在也有很多在局域網(wǎng)上不使用服務器的通訊軟件 ,比如飛鴿傳書 ,這種軟件小巧且方便,也 能解決一部分問題。而且,不使用服務器的通訊軟件,是以機器為通訊單元的,而有服務器的通訊軟件是以人為通訊單元 ,可以明確聯(lián)絡(luò)的對象,準確的找到對方 。 課題的內(nèi)容 這個 基于 socket 技術(shù) 的即時通訊軟件 是基于 Visual Basic 平臺和 Access 數(shù)據(jù)庫設(shè)計的 。 采用 原型法設(shè)計 可以使 設(shè)計過程由淺入深,方 便以后在功能上拓展軟件。 長沙學院 畢業(yè)設(shè)計 (論文 ) 2 第 2 章 開發(fā)工具介紹 VB 簡介 Visual Basic 是一個功能強大的應用程序開發(fā)工具,在世界范圍內(nèi)得到了廣泛的應用。 用傳統(tǒng)程序設(shè)計語言設(shè)計程序時,都是通過編寫程序代碼來設(shè)計用戶界面,在設(shè)計過程中看不到界面的實際顯示效果,必須編譯后運行程序才能觀察。有時候,這種編程 編譯 修改的操作需要反復多次,大大影響了軟件開發(fā)效率。只需要按設(shè)計要求的屏幕布局,用系統(tǒng)提供的工具,在屏幕上畫出各種 “部件 ”,即圖形對象,并設(shè)置這些圖形對象的屬性。 版以后的 Visual Basic 支持面向?qū)ο蟮某绦蛟O(shè)計,但它與一般的面向?qū)ο蟮某绦蛟O(shè)計語言( C++)不完全相同。在設(shè)計對象時,不必編寫建立和描述每個對象的程序代碼,而是用工具畫在界面上, Visual Basic 自動生成對象的程序代碼并封裝起來,每個對象以圖形方式顯示在界面上,都是可視的 [3]。 Visual Basic 語句簡單易懂,其編輯器支持彩色代碼,可自動進行語法錯誤檢查,同時具有功能強大且使用靈活的調(diào)試器和編譯器。在設(shè)計 Visual Basic 程序的過長沙學院 畢業(yè)設(shè)計 (論文 ) 3 程中,隨時可以運行程序,而在整個程序設(shè)計好之后,可以編譯生成可執(zhí)行文件( EXE),脫離 Visual Basic 環(huán)境,直接在 Windows 環(huán)境下運行,直接方便了通訊 軟件的 獨立 運行。一個對象可能會產(chǎn)生多個事件,每個事件都可以通過一段程序來響應。 在用 Visual Basic 設(shè)計大型應用軟件時,不必建立具有明顯開始和結(jié)束的程序,而是編寫若干個微小的子程序,即過程。 Visual Basic 具 有強大的數(shù)據(jù)庫管理功能,利用數(shù)據(jù)控件和數(shù)據(jù)庫管理窗口,可以直接建立或處理 Microsoft Access 格式的數(shù)據(jù)庫,并提供了強大的數(shù)據(jù)存儲和檢索功能。 Visual Basic 提供開放式數(shù)據(jù)連接,即 ODBC 功能,可通過直接訪問或建立連接的方式使用并操作后臺大型網(wǎng)絡(luò)數(shù)據(jù)庫,如 SQL Server, Oracle 等。 利用動態(tài)數(shù)據(jù)交換( Dynamic Data Exchange)技術(shù),可以把一種應用程序中的數(shù)據(jù)動態(tài)地鏈接到另一種應用程序中,使兩種完全不同的應用程序建立起一條動態(tài)數(shù)據(jù)鏈路。 Visual Basic 提供了動態(tài)數(shù)據(jù)交換的編程技術(shù),可以在應用程序中與其他 Windows 應用程序建立動態(tài)數(shù)據(jù)交換,在不同的應用程序之間進行通信。 OLE 技術(shù)是 Microsoft 公司對象技術(shù)的戰(zhàn)略,它把多個應用程序合為一體,將每個應用程序看作是一個對象進行鏈接和嵌入,是一種應用程序一體化的技術(shù)。 Visual Basic 是一種高級程序設(shè)計語言,不具備低級語言的功能,對訪問機器硬件的長沙學院 畢業(yè)設(shè)計 (論文 ) 4 操作不太容易實現(xiàn)。 此外,通過動態(tài)鏈接庫,還可以調(diào)用 Windows 應用程序接口( API)函數(shù),實 現(xiàn) SDK 所具有的功能 [6]。剛開始時微軟公司是將Access 單獨作為一個產(chǎn)品進行銷售的,后來微軟發(fā)現(xiàn)如果將 Access 捆綁在 Office 中一 起發(fā)售,將帶來更加可觀的利潤,于是第一次將 Access 捆綁到 Office97 中,成為 Office 套件中的一個重要成員。自從 1992年開始銷售以來, Access 已經(jīng)賣出了超過 6000 萬份,現(xiàn)在它已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫管理系統(tǒng)。不管是處理公司的客戶訂單數(shù)據(jù);管理自己的個人通訊錄;還是大量科研數(shù)據(jù)的記錄和處理,人們都可以利用它來解決大量數(shù)據(jù)的管理工作。 Microsoft Access 2020 提供有功能強大而直觀的 XML 數(shù)據(jù)共享功能,而無須考慮平臺、數(shù)據(jù)格式、協(xié)議、架構(gòu)或商務規(guī) 則之間的差異。同時,還可使用來自窗體、報表和數(shù)據(jù)訪問頁中其他應用程序的 XML 數(shù)據(jù)。由于這些源將 XML 用作自己的數(shù)據(jù)交換格式,因此可以在 Access 中創(chuàng)建一系列聚合查詢,以將該數(shù)據(jù)拉入視圖中,然后利用這些視圖設(shè)計窗體和報表。Access 可通過一種標準一致的方式,便捷地描述豐富的結(jié)構(gòu)化 XML 數(shù)據(jù),同時也便于與其他應用程序間實現(xiàn)數(shù)據(jù)傳輸。 長沙學院 畢業(yè)設(shè)計 (論文 ) 5 第 3 章 網(wǎng)絡(luò)通訊程序的設(shè)計原理 TCP/IP 協(xié)議 TCP/IP 是國際互聯(lián)網(wǎng)所采用進行網(wǎng)際互連的通信協(xié)議。 TCP 傳輸控制協(xié)議( Transmission Control Protocol),負責在應用程序之間傳遞數(shù)據(jù)。這個協(xié)議組包括幾種工作在不同層次上的網(wǎng)絡(luò)協(xié)議, UDP 用戶數(shù)據(jù)報協(xié)議( User Datagram Protocol),提供給用戶進程的無連接協(xié)議,也負責在應用程序之間無連接傳遞數(shù)據(jù),但不執(zhí)行正確性檢查。ARP 地址解析協(xié)議( Address Resolution Protocol),負責將網(wǎng)絡(luò)層地址轉(zhuǎn)換成鏈路層地址。 TCP/IP 協(xié)議的核心是傳輸層協(xié)議( TCP、 UDP)、網(wǎng)絡(luò)層協(xié)議( IP)和物理接口層,這三層通常在操作系統(tǒng)的內(nèi)核中實現(xiàn)。協(xié)議可以是 可靠的可以是不可靠的??煽總鬏敯◣讉€特征。 也就是說,程序每次發(fā)送 一 個報文時,都期望對方發(fā)送一個相當于說: “我得到這個報文 ”的確認信息。其次,為了確保傳輸?shù)臄?shù)據(jù)有效,可靠協(xié)議在每次傳輸時,都包含一個或更多的校驗和( CRC)。如果不匹配,就表明在傳輸 過程中發(fā)生了錯誤。相比之下,不可靠協(xié)議不能確保數(shù)據(jù)正確傳輸。而且,不可靠協(xié)議在傳輸失敗后,并不通知發(fā)送方應用程序。如果發(fā)送地址是 錯 誤的,由于郵遞系統(tǒng)不能將信退回給你,所以你就不知道信件有沒有送到。 TCP/ IP 協(xié)議組中存在的兩個基本數(shù)據(jù)服務是:字節(jié)流服務和數(shù)據(jù)報服務。協(xié)議不管要求發(fā)送或接收數(shù)據(jù)的長度和傳送數(shù)目,只是將數(shù)據(jù)看作一個簡單的字節(jié)串流。協(xié)議單獨發(fā)送每個數(shù)據(jù)報 ——數(shù)據(jù)報之間不相互依賴。連接的接收方可以按每次 20 字節(jié)讀數(shù)據(jù) (要讀 5 次 )。 字節(jié)流協(xié)議不關(guān)心每個數(shù)據(jù)段的長度。相比之下,傳輸?shù)?同一目的地的多個數(shù)據(jù)報可能不會按發(fā)送順序到達。用戶數(shù)據(jù)報協(xié)議和互連網(wǎng)協(xié)議使用數(shù)據(jù)報傳輸數(shù)據(jù)。如果你在同一天給同一個人郵寄兩封信,你無法知道那個人先收到那封信。收到信的順序和發(fā)送順序可能相反。 IP 數(shù)據(jù)報保存目的和源 IP 地址,同樣傳輸協(xié)議也保存源和目的端口號。你可能編寫過往硬件端口送數(shù)據(jù)的程序。 PC 機給它的端口命名和編號。在 Inter 上,網(wǎng)絡(luò)只是簡單地對協(xié)議端口編號。 成千的 PC 機應用程序使用此方案。同樣,程序員將每個 Inter 協(xié)議端口與一個特定的應用程序和 功能聯(lián)系在一起。 通用口分配是特定應用程序廣泛使用的一個協(xié)議端口。例如,平凡文件傳輸協(xié)議( FTP)的通用口分配是端口號 21 的。 客戶機 /服務器模型 客戶機 /服務器 ( C/S) 模型 是一種網(wǎng)絡(luò)模型,它并不是定義 了網(wǎng)絡(luò)的層次結(jié)構(gòu),而是描述了一種網(wǎng)絡(luò)程序運行的方式??蛻舴綄Ψ掌鞣桨l(fā)送信息請求,服務器方對其做出相應回答,提供服務。服務程序通常在一個眾所周知的地址監(jiān)聽對服務的請求,也就是說,服務進程一直處于休眠狀態(tài),直到一個客戶程序提出了請求長沙學院 畢業(yè)設(shè)計 (論文 ) 7 信息。雖然基于連接的服務是設(shè)計客戶 /服務器應用程序的標準,但有些服務也是可以通過數(shù) 據(jù)報Socket 提供的。但是,也可以設(shè)計同時完成這兩種功能的程序,例如,一些服務器程序如果不能完成一個服務請求時,它將轉(zhuǎn)而充當客戶程序,向其它服務器程序請求信息。 為了充分理解 TCP/IP 協(xié)議族,必須理解幾個重要術(shù)語。這些術(shù)語進一步描述了與網(wǎng)絡(luò)連接、協(xié)議可靠性以 及數(shù)據(jù)服務有關(guān)的協(xié)議特性。 你知道, TCP 傳輸層通過協(xié)議端口和應用程序(像服務器和客戶)通信,也就是說,為了 接 收客戶請求,服務器程序必須對傳輸層的一個特定協(xié)議端口進行偵聽。也就是說,程序告訴 Socket 執(zhí)行體使用哪一個協(xié)議端口進行數(shù)據(jù)傳送。 使用無連接協(xié)議 的程序和使用面向連接協(xié)議的服務器程序之間的主要相似之處是它們都必須對一個協(xié)議端口進行偵聽。同樣,由于無連接客戶程序沒有和遠地主機建立直接連接,所以它也必須對協(xié)議端口進行偵聽,以便接收以對它服務請求產(chǎn)生的數(shù)據(jù)報應答。 下面程序行顯示了一個典型的函數(shù)調(diào)用: result= bind ( socket_handle, local_structure, socket_address, address_ length) 無連接客戶程序也對一個協(xié)議端口進行偵聽。無連接客戶程序使用數(shù)據(jù)報發(fā)送網(wǎng)絡(luò)服務請求,它不建立點到點連接。與服務器程序一樣,無連接客戶程序也使用 bind()函數(shù)讓 Socket 執(zhí)行體登記協(xié)議端口。 Socket執(zhí)行體處理傳輸層內(nèi) UDP 軟件模塊和客戶程序 之間的接口 [9]。列舉如下: ( 1) 支持多賬號。 ( 3) 可以同時發(fā)送一個消息給所有 人 。 ( 5) 提供消息、聊天的歷史記錄,方便對信息的查看和管理。 ( 7) 用戶 上線通知。 包括服務器程序和客戶端程序,服務器包括聊天信息即時轉(zhuǎn)發(fā) 、系統(tǒng)日志記錄、 發(fā)送通知 、以及數(shù)據(jù)庫的備份、還原、 初始化。 系統(tǒng)功 能需求圖 這個即時通訊軟件系統(tǒng)包括服務器端和客戶端,服務器端有聊天記錄、系統(tǒng)設(shè)置、發(fā)布通告、數(shù)據(jù)庫備份還原初始化、 置頂 的功能,客戶端要求有登陸、注冊、聊天和修改 查看 個人信息的功能,系統(tǒng)功能的需求圖如下: 長沙學院 畢業(yè)設(shè)計 (論文 ) 9 圖 系統(tǒng)功能需求圖 開發(fā)方法介紹 目前比較成熟的信息系統(tǒng)開發(fā)方法有:生命周期法、原型法、面向?qū)ο蠓ǖ取U麄€生命周期劃分為五個主要工作階段:可行性分析階段、系統(tǒng)分析階段、系統(tǒng)設(shè)計階段、系統(tǒng)實 施階段和系統(tǒng)運行、維護與評價階段。適用于開發(fā)需求較明確固定的信息系統(tǒng)。 開發(fā)過程以用戶為中心,開發(fā)周期短。 面向?qū)ο蠓ǎ?以類,類的繼承,聚集等概念描述客觀事物以及聯(lián)系。其特征主要有模塊性,繼承性和類比性,動態(tài)連接性。本 即時通訊 軟件采用的是原型法。其中包括系統(tǒng)的應用范圍、系統(tǒng)開發(fā)的經(jīng)費估算等。包括確定需求和開發(fā)工作模型,例如屏幕格式、功能菜單、報表格式以及對關(guān)鍵數(shù)據(jù)和功能的說明 等。 ( 4) 如果需要,可寫出系統(tǒng)必要成分的嚴格、詳細的說明。考察用戶新加入的需求信息和組成成分的嚴格說明信息,看其對原型效果的影響,是否影響到原型的有效性,如果導致原型失敗,應加以修正和改進。它綜合了所有提出的必要需求,建立原型就近似于預先需求的規(guī)格說明。它可以綜合用戶、 領(lǐng)導和原型開發(fā)人員的各方需求 [10]。 作為 即時通訊軟件系統(tǒng),客戶端信息全部來自于服務器,服務器端 能實時掌握所有客戶登錄、退出、對話情況,并能實時轉(zhuǎn)發(fā)、廣播給相應客戶??蛻舳酥恍枰粋€ Winsock 控件,應具有隨時連接、斷開服務器的功能,也應具有對接收到的信息做出正確分析、處理的能力。 關(guān)鍵通信技術(shù)- Winsock 本系統(tǒng)的開發(fā) 平臺 是 VB ,采用了面向網(wǎng)絡(luò)連接的 Winsock 控件。 Winsock 控件可以使用兩種協(xié)議: TCP 協(xié)議和 UDP 協(xié)議。 UDP 可以實現(xiàn)點對點無服務器通訊 。 利用 TCP 協(xié)議通訊必須分別建立客戶應用程序和服務器應用程序。創(chuàng)建服務器應用程序時 ,應設(shè)置一個偵 聽端口( LocalPort 屬性)并調(diào)用 listen 方法。為了完成連接,可以在 ConnectionRequest 事件中調(diào)用Accept 方法。如果要發(fā)送數(shù)據(jù),需調(diào)用 SendData 方法。 Winsock 控件屬性 : Protocol∥ 值為 sckTCPProtocol 時使用 TCP/ IP 協(xié)議 ,sckUDPProtocol 使用 UDP 協(xié)議 長沙學院 畢業(yè)設(shè)計 (論文 ) 12 RemoteHost ∥ 準備連接遠程機的 IP 地址 RemotePort ∥ 連接遠程機的 IP 端口號 LocalPort ∥ 本地機 IP 端口號 Winsock 控件方法 : Connect ∥ 申請連接遠程機 Listen ∥ 設(shè)置監(jiān)聽 Accept ∥ 建立實際連接 Se
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1