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

正文內(nèi)容

基于vc的企業(yè)內(nèi)部通信軟件的設(shè)計與實現(xiàn)計算機優(yōu)秀畢業(yè)論文-文庫吧資料

2025-07-03 18:49本頁面
  

【正文】 出請求對話框而直接加為好友。此功能可以向選定IP的IP段發(fā)送添加請求的消息,這相當(dāng)于批量添加好友的功能。在列表框展開下拉列表后,可以按DELETE鍵刪除選定的IP。也可以從IP輸入框里選擇以前加過的好友IP。用戶列表框是一列一列的顯示添加的好友,最左邊是好友的頭像;中部上邊是好友的昵稱,下面是好友的IP;右下角是刪除好友按鈕和攝像頭按鈕,當(dāng)然好友必須有攝像頭才會顯示攝像頭按鈕?!≈鹘缑娌季殖绦蛑鹘缑嫒鐖D41所示。 }}事件與普通變量不一樣,普通變量只在運行的當(dāng)前程序中有效,而事件在整個系統(tǒng)中都有效。只允許運行一個實例,有多種方法,本設(shè)計采用的是創(chuàng)建命名事件的方法:HANDLE hEvent = ::CreateEvent( NULL, FALSE, FALSE, InstantMessaging )。}以上代碼在程序退出時調(diào)用,從托盤從刪除圖標(biāo)。m_nid )。在托盤添加圖標(biāo),退出程序前,如果沒有從托盤刪除圖標(biāo),那么托盤區(qū)的圖標(biāo)會一直保留下來,直到鼠標(biāo)移過托盤區(qū)引起托盤區(qū)的重繪,這當(dāng)然不是我們所希望的結(jié)果。void OnShellNotifyProc( WPARAM wParam, LPARAM lParam )。這樣我們就在托盤區(qū)顯示了STATE_ONLINE的圖標(biāo),把鼠標(biāo)移動到圖標(biāo)上一會,還會出現(xiàn)“即時聊天軟件”的提示框。Shell_NotifyIcon( NIM_ADD, amp。 = IDR_MENU1。 = WM_SHELLNOTIFY。 = m_hWnd。HICON hIcon = AfxGetApp()LoadIcon( STATE_ONLINE )。(5)托盤圖標(biāo)的顯示至此,程序已不在任務(wù)欄顯示圖標(biāo),已是最頂層窗口,而且也已有熱鍵功能,但是還沒有實現(xiàn)托盤圖標(biāo)的顯示。 }}void CInstantMessagingDlg::OnCancel() { if( IDOK == MessageBox( 要退出嗎?, 退出, MB_OKCANCEL | MB_ICONINFORMATION | MB_DEFBUTTON2 ) ) { … DestroyWindow()。void CInstantMessagingDlg::OnSysCommand(UINT nID, LPARAM lParam){ …if( nID == SC_MINIMIZE ) { thisShowWindow( SW_HIDE)。 }}在OnHotkey()函數(shù)中判斷主界面是否是可見的,如果是可見的那么隱藏起來,否則顯示,并且把主界面設(shè)為前景窗口。 } else { ShowWindow( SW_SHOW )。BEGIN_MESSAGE_MAP(CInstantMessagingDlg, CDialog) … ON_MESSAGE( WM_HOTKEY, OnHotkey ) … //}}AFX_MSG_MAPEND_MESSAGE_MAP()在消息映射中,我們用OnHotkey()函數(shù)來處理WM_HOTKEY消息。使用全局函數(shù)RegisterHotKey可以注冊熱鍵,如果注冊的熱鍵沒有被其他程序占用,那么注冊成功。熱鍵的功能可以隱藏、顯示主界面,有消息到達時,按熱鍵也可以打開聊天對話框。最后一個參數(shù),是用位或|組后起來的,從字面意思上我們就能理解到這是不移動不改變大小的意思,忽略了當(dāng)中的4個參數(shù)。wndTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE )。這樣,主界面就不會出現(xiàn)在任務(wù)欄里面了。上面代碼就達到了使程序主界面不在任務(wù)欄中顯示的目的。dlg。dlgParent )。( SW_HIDE )。下面從各個方面來說明本設(shè)計的處理方式:(1)不在任務(wù)欄顯示圖標(biāo)CDialog dlgParent。不但是這樣處理的,很多聊天軟件都采用此種處理方式。}在函數(shù)或語句組的開始處定義一個CDebug變量,當(dāng)程序運行到變量定義處的時候,會打印出run in : test,當(dāng)程序執(zhí)行完函數(shù)或語句組時,會打印出run out : test,這樣我們就可以知道程序運行到何處,極大的方便了我們對程序的調(diào)試。 TRACE( strTrace )。}CDebug::~CDebug(){ CString strTrace。 strTrace = run in : + m_strMessage + \n。期中構(gòu)造和析構(gòu)函數(shù)如下:CDebug::CDebug( CString strMessage ){ m_strMessage = strMessage。 virtual ~CDebug()。 /// 信息public: CDebug()。程序用讀取和寫入配置文件系列函數(shù)來管理此配置文件。這樣處理還有一個好處,如果需要修改某些宏的值,而不用到處去找宏的定義,方便和快捷。 基本框架設(shè)計本節(jié)內(nèi)容將介紹本軟件的基本框架設(shè)計,包括宏和數(shù)據(jù)結(jié)構(gòu)的定義、程序的配置文件、調(diào)試模塊、主頁面初始化相關(guān)內(nèi)容、主頁面的布局以及其自會按鈕和自繪好友列表等基本框架相關(guān)內(nèi)容。本文件傳輸功能用可以支持?jǐn)帱c續(xù)傳文件。建立連接的多個用戶都在看同一塊白板,在上面畫的圖、寫的內(nèi)容,都可以馬上會呈現(xiàn)給其他用戶。(3) 白板模塊:多個用戶端之間的白板信息傳送。(2) 聊天室模塊:多個用戶端的基本聊天信息的發(fā)送,聊天信息只能是文本信息。總體功能傳輸文件白板聊天室發(fā)送基本聊天信息保持連接發(fā)送圖片信息發(fā)送文本信息圖41 總體功能框圖本軟件的總體功能主要劃分為五個模塊:(1) 基本聊天模塊:兩個用戶端的基本聊天信息發(fā)送,這些基本聊天信息包括文本和圖片。所以本章是本論文的重點。第二,介紹本軟件的詳細(xì)設(shè)計。第4章 軟件系統(tǒng)設(shè)計本章將從兩個方面介紹本系統(tǒng)的設(shè)計。 技術(shù)可行性分析首先我已經(jīng)搭建好開發(fā)所需要的軟硬件平臺,并進行了合理而完善的需求分析,做好了充分的前期準(zhǔn)備工作,其次因為本程序的平臺將基于WINDOWS,將要使用網(wǎng)絡(luò)通信技術(shù),而WINDOWS有完善成熟的網(wǎng)絡(luò)通信接口,以及與VC++,加之相類似的更大規(guī)模的INTERNET通信工具產(chǎn)品也已有例在先,所以這個程序的開發(fā)可行性在技術(shù)上是完全可行的。 經(jīng)濟可行性分析由于本軟件的主要背景是畢業(yè)課程設(shè)計,不注重直接的經(jīng)濟效益和其后的發(fā)展方向,注重的是自身水平和能力的提高。 可行性分析軟件可行性分析最根本的任務(wù)是對以后的行動方針提出建議。在本地局域網(wǎng)中使用,所以無需進行用戶登錄,無需認(rèn)證界面,啟動后的應(yīng)用界面要清爽,設(shè)計要簡單明了,要具有較高的易用性。(4)模塊化設(shè)計此軟件的功能,不同的模塊實現(xiàn)不同的功能,使得軟件易于以后的維護與擴展,在以后可以更好的完善本軟件的功能,更方便于在工作中的應(yīng)用。設(shè)計界面是,簡化界面的復(fù)雜性,模擬等現(xiàn)有即時通訊工具的界面,使用戶能很容易看懂并使用。在程序的設(shè)計過程中,要求能盡可能多的設(shè)想到用戶使用過程中可能發(fā)生的事件,并能在判斷事件后做出相應(yīng)的處理,使程序具有較高的容錯性能。(4)其它程序內(nèi)部可能需要設(shè)計的數(shù)據(jù)結(jié)構(gòu)體。(3)客戶端向服務(wù)器端發(fā)送的確認(rèn)在線信息。(2)在線用戶列表信息?!?shù)據(jù)需求分析(1)客戶端之間聊天信息。通過聊天室滿足交流討論,通過白板讓發(fā)起者將想要表達的內(nèi)容,清楚的給目標(biāo)對象呈現(xiàn)出來。因為文件傳輸入要求數(shù)據(jù)不能出錯,因此此模塊采用TCP協(xié)議。在傳文件之前,首先創(chuàng)建一信息文件,記錄文件傳送的一些信息,并根據(jù)傳輸?shù)臄?shù)據(jù)量實時修改。在信息傳輸中,預(yù)計利用TCP/IP協(xié)議中的UDP協(xié)議,這是面向無連接的協(xié)議,但發(fā)送速度快,用于聊天信息傳輸用適合。用戶通過輸入IP來查找用戶,并申請加為好友,在對方同意加為好友后,在線用戶列表就會更新用戶,把加入的用戶添加到用戶列表中。l Telnet遠(yuǎn)程登錄l FTP文件傳輸協(xié)議l SMTP簡單郵件傳輸協(xié)議l SNMP簡單網(wǎng)絡(luò)管理協(xié)議第3章 軟件需求分析 需求分析 功能需求分析(1)用戶端的基本聊天信息發(fā)送,這些基本聊天信息包括文本和圖片。(4)應(yīng)用層,負(fù)責(zé)處理特定的程序細(xì)節(jié)。由于運輸層提供了高可靠性的端到端的通信,因此應(yīng)用層可以忽略所有這些細(xì)節(jié)。在TCP/IP協(xié)議組件中,有兩個互不相同的傳輸協(xié)議:TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)報協(xié)議)。網(wǎng)絡(luò)層協(xié)議包括IP協(xié)議(網(wǎng)際協(xié)議),ICMP協(xié)議(Internet互聯(lián)網(wǎng)控制報文協(xié)議),以及IGMP協(xié)議(Internet組管理協(xié)議)。用于處理與電纜等其他任何傳輸媒介的物理接口細(xì)節(jié)。從分層模型方面來講,TCP/IP由四個層次組成:鏈路層、網(wǎng)絡(luò)層、傳輸層、應(yīng)用層。這個協(xié)議作為網(wǎng)絡(luò)中使用的基本協(xié)議,是Internet國際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ)。我們在充分利用Windows Sockets的基于消息的網(wǎng)絡(luò)事件異步選擇機制,用消息來驅(qū)動數(shù)據(jù)的發(fā)送和接收的基礎(chǔ)上,結(jié)合使用其他措施,如將數(shù)據(jù)的收和發(fā)放在高優(yōu)先級線程,在軟件設(shè)計上,安排好時序,盡量避免在同一時間內(nèi),雙方都在向?qū)Ψ桨l(fā)送大量數(shù)據(jù)的情況發(fā)生,保證網(wǎng)絡(luò)要有足夠的帶寬等,成功地實現(xiàn)了數(shù)據(jù)傳輸?shù)膶崟r性。(4)在許多情況下,要求通信模塊應(yīng)實時地收、發(fā)數(shù)據(jù)。即將數(shù)據(jù)的發(fā)或收,放在一個具有一定優(yōu)先級(一般宜取較高優(yōu)先級)的輔助線程中,在數(shù)據(jù)發(fā)或收期間,主程序仍可進行其它工作,譬如利用上一個周期收到的數(shù)據(jù)繪制曲線 。 當(dāng)然,也可將通信模塊函數(shù)化,并形成一個動態(tài)連接庫文件(DLL文件),供主程序調(diào)用。 (2)一般情況下,網(wǎng)絡(luò)通信程序是某應(yīng)用程序中的一模塊。(7)通訊完畢后,銷毀CArchive、CSocketFile和CSocket對象。切記CArchive是不能和數(shù)據(jù)報套接字一起工作的。 (4)產(chǎn)生一個CSocketFile對象,并把它與CSocket 對象關(guān)聯(lián)起來。 (3)如果是客戶方套接字,則調(diào)用CAsyncSocket ∷Connect()函數(shù)與服務(wù)方套接字連接;如果是服務(wù)方套接字,則調(diào)用CAsyncSocket∷Listen()開始監(jiān)聽來自客戶方的連接請求,收到連接請求后,調(diào)用CAsyncSocket∷Accept()函數(shù)接受請求,建立連接。而對于服務(wù)方程序,必須在調(diào)用Create時指定一個端口。 (2)使用這個對象的Create()成員函數(shù)產(chǎn)生一個socket對象。以下介紹的針對字節(jié)流型套接字的操作步驟中,只有第三步對于客戶方和服務(wù)方操作是不同的,其他步驟都相同。TCP / IP核心協(xié)議連同網(wǎng)絡(luò)物理介質(zhì)(如網(wǎng)卡)一起,都是提供網(wǎng)絡(luò)應(yīng)用程序間相互通信的設(shè)施。但是,所開發(fā)的網(wǎng)絡(luò)通信應(yīng)用程序并不能直接與TCP / IP核心打交道,而是與網(wǎng)絡(luò)應(yīng)用編程界面Windows Sockets API打交道。 所采用的網(wǎng)絡(luò)通信協(xié)議一般是TCP / IP。Visual C++ (MFC,即Microsoft Foundation Class)庫是一系列C++類,其中封裝著為Microsoft Windows操作系統(tǒng)系列編寫應(yīng)用程序的各種功能 。 所采用的編程語言一般可選目前較流行使用的可視化和采用面向?qū)ο蠹夹g(shù)的Microsoft Visual C++ 。近年來,隨著計算機網(wǎng)絡(luò)與Windows 95的流行,許多用戶所開發(fā)的應(yīng)用程序需要實現(xiàn)網(wǎng)絡(luò)間的數(shù)據(jù)通信。這些擴充有利于應(yīng)用程序開發(fā)者編制符合Windows編程模式的軟件,它使在Windows下開發(fā)高性能的網(wǎng)絡(luò)通信程序成為可能。Windows Sockets API是Microsoft Windows的網(wǎng)絡(luò)程序設(shè)計接口,它在繼承了Berkeley Sockets主要特征的基礎(chǔ)上,又對它進行了重要擴充?!ocket簡介 套接字(Socket)最初是由加利福尼亞大學(xué)Berkeley分校為UNIX操作系統(tǒng)開發(fā)的網(wǎng)絡(luò)通信接口,隨著UNIX操作系統(tǒng)的廣泛使用,套接字成為當(dāng)前最流行的網(wǎng)絡(luò)通信應(yīng)用程序接口之一。開發(fā)組件:Windows Sockets 實現(xiàn)文檔、應(yīng)用程序接口(API)引入庫和一些頭文件。這些擴充主要是提供了一些異步函數(shù),并增加了符合WINDOWS消息驅(qū)動特性的網(wǎng)絡(luò)事件異步選擇機制。因為在總體上,MFC框架定義了應(yīng)用程序的輪廓,并提供了用戶接口的標(biāo)準(zhǔn)實現(xiàn)方法,程序員所要做的就是通過預(yù)定義的接口把具體應(yīng)用程序特有的東西填入這個輪廓。而且,基于MFC的程序不僅小巧而且運行速度快,這是因為Visual C++非常接近Windows的底層,所以編譯器所編譯出來的程序質(zhì)量相當(dāng)?shù)母撸瑥亩WC了Visual C++編寫出來的軟件產(chǎn)品擁有高效率的運行速度。MFC是一組C++類,這些是由常用的Windows應(yīng)用程序定制的。AppWizard可以用來生成初步的框架文件,資源編輯器用于幫助直觀地設(shè)計用戶接口,CLassWizard用來協(xié)助添加代碼到框架文件,并且提供文檔/視圖結(jié)構(gòu)支持,從而使用應(yīng)用程序開發(fā)變得輕松。使用Vissual C++可以完成任何C語言和C++語言的程序。 開發(fā)工具簡介本系統(tǒng)采用Windows 7中文操作系統(tǒng),包含Windows API的支持,使用面向?qū)ο蟮木幊坦ぞ遃isual C++ 。因此,通過該軟件的設(shè)計和開發(fā),可以對自己所學(xué)習(xí)的知識進行了一次綜合提高,并且會有更深層次的理解和掌握,在這個過程中,還能激發(fā)自己的學(xué)習(xí)潛力,提高軟件開發(fā)的能力,加深對網(wǎng)絡(luò)協(xié)議和Windows環(huán)境下網(wǎng)絡(luò)編程的理解和掌握,所以,開發(fā)企業(yè)內(nèi)部通信軟件在理論和實踐上都有非常重要的意義?! ≡谕ㄐ殴ぞ呱?,我們習(xí)慣了通過類似于,MSN之類的程序軟件和天南地北的朋友聊天、發(fā)信息,不過所有聊天程序都需要Internet的支持,因此它們無法在局域網(wǎng)內(nèi)部大顯身手,那么是否想到過要讓單位內(nèi)部的員工,寢室周圍的同學(xué),不用上Internet就可以輕松體驗到內(nèi)網(wǎng)通訊的樂趣呢?有了這種想法,本課題的研究內(nèi)容——開發(fā)局域網(wǎng)通信軟件
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1