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

正文內(nèi)容

ftp服務(wù)與客戶端系統(tǒng)設(shè)計—免費-文庫吧

2025-07-22 16:47 本頁面


【正文】 ndows 應(yīng)用程序變得更加容易。MFC 是在整個 Windows 家族中都是兼容的,也就是說,無論是 、Windows95 還是 Windows NT,所使用的 MFC 是兼容的。每當(dāng)新的 Windows 版本出現(xiàn)時,MFC 也會得到修改以便使舊的編譯器和代碼能在新的系統(tǒng)中工作。MFC 也回得到擴展,添加新的特性、變得更加容易建立應(yīng)用程序。 使用 MFC 的最大優(yōu)點是它為你做了所有最難做的事。MFC 中包含了上成千上萬行正確、優(yōu)化和功能強大的 Windows 代碼。你所調(diào)用的很多成員函數(shù)完成了你自己可能很難完成的工作。從這點上將,MFC 極大地加快了你的程序開發(fā)速度。由于MFC編程方法充分利用了面向?qū)ο蠹夹g(shù)的優(yōu)點,它使得我們編程時極少需要關(guān)心對象方法的實現(xiàn)細(xì)節(jié),同時類庫中的各種對象的強大功能足以完成我們程序中的絕大部分所需功能,這使得應(yīng)用程序中程序員所需要編寫的代碼大為減少,有力地保證了程序的良好的可調(diào)試性。最重要的是MFC類庫在提供的對象的各種屬性和方法都是經(jīng)過謹(jǐn)慎的編寫和嚴(yán)格的測試,可靠性很高,這就保證了使用MFC類庫不會影響程序的可靠性和正確性。MFC的常用類有:1).CWnd:窗口,它是大多數(shù)“看得見的東西”的父類(Windows里幾乎所有看得見的東西都是一個窗口,大窗口里有許多小窗口),比如視圖CView、 框架窗口CFrameWnd、工具條CToolBar、對話框CDialog、按鈕CButton,etc。一個例外是菜單(CMenu)不是從窗口派生 的。該類很大,一開始也不必學(xué),知道就行了。 2).CDocument文檔,負(fù)責(zé)內(nèi)存數(shù)據(jù)與磁盤的交互。最重要的是OnOpenDocument(讀入),OnSaveDocument(寫盤),Serialize(讀寫)。 3).CView視圖,負(fù)責(zé)內(nèi)存數(shù)據(jù)與用戶的交互。包括數(shù)據(jù)的顯示、用戶操作的響應(yīng)(如菜單的選取、鼠標(biāo)的響應(yīng))。最重要的是OnDraw(重畫窗 口),通常用CWnd::Invalidate()來啟動它。另外,它通過消息映射表處理菜單、工具條、快捷鍵和其他用戶消息。你自己的許多功能都要加在 里面,你打交道最多的就是它。 4).CDC設(shè)備文本。無論是顯示器還是打印機,都是畫圖給用戶看。這圖就抽象為CDC。CDC與其他GDI(圖形設(shè)備接口)一起,完成文字和圖形、圖 像的顯示工作。把CDC想象成一張紙,每個窗口都有一個CDC相聯(lián)系,負(fù)責(zé)畫窗口。CDC有個常用子類CClientDC(窗口客戶區(qū)),畫圖通常通過 CClientDC完成。 5).CDialog對話框。 6).CWinApp應(yīng)用程序類。似于C中的main函數(shù),是程序執(zhí)行的入口和管理者,負(fù)責(zé)程序建立、消滅,主窗口和文檔模板的建立。最常用函數(shù)InitInstance():初始化。 7).CGdiObject及子類,用于向設(shè)備文本畫圖。它們都需要在使用前選進(jìn)DC。 8).CPen筆,畫線。 9).CBrush刷子,填充。 10).CFont字體,控制文字輸出的字體。 11).CBitmap位圖。 12).CPalette調(diào)色板 。 13).CRgn區(qū)域,指定一塊區(qū)域可以用于做特殊處理。 14).CFile文件。最重要的不外是Open(打開),Read(讀入),Write(寫)。 15).CString字符串。封裝了C中的字符數(shù)組,非常實用。 16).CPoint點,就是(x,y)對。 17).CRect矩形,就是(left,top,right,bottom)。 18).CSize大小,就是(cx,cy)對(寬、高)。 本文工作內(nèi)容本文的主要工作為FTP服務(wù)器和客戶端的設(shè)計。其主要設(shè)計內(nèi)容有:(1)服務(wù)器設(shè)計:● 服務(wù)器日志模塊。● 在線用戶模塊?!?程序設(shè)置模塊 ?!?統(tǒng)計模塊?!?安全模塊。(2)客戶端設(shè)計:● 連接服務(wù)器模塊?!?上傳文件模塊?!?下載文件模塊。 第2章 系統(tǒng)整體設(shè)計本系統(tǒng)的設(shè)計為FTP服務(wù)器和客戶端設(shè)計,主要設(shè)計模塊分為服務(wù)器設(shè)計模塊和客戶端設(shè)計模塊。服務(wù)器設(shè)計模塊包括:服務(wù)器日志模塊,在線用戶模塊,程序設(shè)置模塊 ,統(tǒng)計模塊,安全模塊。客戶端設(shè)計模塊包括:連接服務(wù)器模塊,上傳文件模塊,下載文件模塊。 FTP服務(wù)器整體設(shè)計 服務(wù)器設(shè)計模塊包括:服務(wù)器日志模塊,在線用戶模塊,程序設(shè)置模塊 ,統(tǒng)計模塊,安全模塊。 FTP服務(wù)器模塊設(shè)計層次圖Fig. FTP server module level design plans服務(wù)器日志模塊。服務(wù)器日志模塊的主要功能為顯示和記錄用戶的登錄信息和一系列的操作信息。例如用戶上傳文件內(nèi)容,上傳時間;下載文件內(nèi)容,下載時間等等。在線用戶模塊。在線用戶模塊的主要功能為顯示當(dāng)前連接上服務(wù)器的用戶。程序設(shè)置模塊。程序設(shè)置模塊的主要功能為配置服務(wù)器參數(shù)。例如允許用戶下載,允許用戶上傳等一些列用戶對服務(wù)器的操作參數(shù)配置。統(tǒng)計模塊。統(tǒng)計模塊的主要功能為統(tǒng)計歷史時間上,服務(wù)器各種操作的總量并顯示。例如服務(wù)器的總下載量,總上傳量,總連接用戶數(shù)等。安全模塊。安全模塊的主要功能為配置服務(wù)器的安全性。主要配置內(nèi)容為設(shè)置允許接入服務(wù)器的IP和禁止接入服務(wù)器的IP。 FTP客戶端整體設(shè)計客戶端設(shè)計模塊包括:連接服務(wù)器模塊,上傳文件模塊,下載文件模塊。 FTP客戶端模塊設(shè)計層次圖Fig. FTP client module level design plans連接服務(wù)器模塊。連接服務(wù)器模塊的主要功能為根據(jù)用戶輸入的用戶名、密碼、服務(wù)器名和連接端口,完成客戶端對服務(wù)器的接入。上傳文件模塊。上傳文件模塊的主要功能為瀏覽本地文件,選擇上傳文件,上傳文件到服務(wù)器。下載文件模塊。下載文件模塊的主要功能為顯示服務(wù)器文件目錄,根據(jù)用戶選擇下載相應(yīng)文件,存儲到本地機器硬盤上。第3章 FTP服務(wù)器模塊設(shè)計服務(wù)器的主要設(shè)計模塊為五個模塊:服務(wù)器日志模塊,在線用戶模塊,程序設(shè)置模塊 ,統(tǒng)計模塊,安全模塊。服務(wù)器日志模塊的主要功能為顯示和記錄用戶的登錄信息和一系列的操作信息。其具體顯示和記錄的日志信息為:服務(wù)器日志模塊一直等待主程序接收到的日志到來;當(dāng)日志消息到來時,將日志消息添加入日志消息顯示隊列,然后發(fā)送日志消息顯示消息,繼續(xù)等待;服務(wù)器日志模塊接收到日志消息顯示消息時,響應(yīng)消息,將日志消息顯示。Fig. Server logs modular design flow chart 服務(wù)器日志模塊運行界面圖Fig. Server logs module running interface 服務(wù)器日志模塊的實現(xiàn)主要通過設(shè)計CFTP_Trace_Child類來實現(xiàn),設(shè)計主要實現(xiàn)功能函數(shù)如下:1. Add_Log_Message(int n, LPCTSTR pstr, ...)函數(shù)。Add_Log_Message函數(shù)的主要功能為向服務(wù)器日志信息顯示List控件增加一個元素,用以顯示到來的信息。其函數(shù)實現(xiàn)代碼為:void CFTP_Trace_Child::Add_Log_Message(int n, LPCTSTR pstr, ...){ CString temp。 va_list args。 // 格式化到來的顯示信息數(shù)據(jù) va_start(args, pstr)。 (pstr, args)。 //增添新元素,創(chuàng)建新到來的日志顯示消息 CLogMsg *p_Log = new CLogMsg。 GetLocalTime(amp。p_Log_SysTime_sheep)。 p_Log_Level_sheep = n。 p_Log_Text_sheep = temp。 ()。 (p_Log)。 ()。 //發(fā)送新到來的日志顯示消息 PostMessage(WM_ADDTRACELINE)。 }2. On_Trace_Ack(WPARAM, LPARAM)函數(shù)。On_Trace_Ack函數(shù)為日志消息響應(yīng)函數(shù),當(dāng)服務(wù)器器接收到客戶端的信息時,向顯示List控件成功添加新元素后,向服務(wù)器日子模塊發(fā)送日志顯示消息;日子模塊在響應(yīng)函數(shù)On_Trace_Ack中,判斷消息的類別,根據(jù)其類別設(shè)定其消息顯示內(nèi)容和內(nèi)容顯示顏色。其函數(shù)實現(xiàn)代碼為:LRESULT CFTP_Trace_Child::On_Trace_Ack(WPARAM, LPARAM){ CLogMsg *pLog_sheep。 pLog_sheep = (CLogMsg *)()。 //判斷日志消息類別用不同顏色將其顯示 if(pLog_sheep_Level_sheep==1) ((CColorListBox*)GetDlgItem(IDC_TRACE)) AddString(pLog_sheep_Text_sheep, RGB(0,255,255))。 else if(pLog_sheep_Level_sheep==2) ((CColorListBox*)GetDlgItem(IDC_TRACE)) AddString(pLog_sheep_Text_sheep, RGB(255,0,255))。 else if(pLog_sheep_Level_sheep==3) ((CColorListBox*)GetDlgItem(IDC_TRACE)) AddString(pLog_sheep_Text_sheep, RGB(255,0,0))。 else ((CColorListBox*)GetDlgItem(IDC_TRACE)) AddString(pLog_sheep_Text_sheep, RGB(0,0,255))。 delete pLog_sheep。 return TRUE。}3. OnSize(UINT nType, int cx, int cy)函數(shù)。OnSize為日子模塊窗口大小改變事件響應(yīng)函數(shù),當(dāng)應(yīng)用程序窗口大小發(fā)生改變時,會觸發(fā)窗口改變事件。在事件響應(yīng)函數(shù)OnSize中,日子模塊改變窗口大小,使其和主窗口保持大小比例。其函數(shù)實現(xiàn)代碼為:void CFTP_Trace_Child::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType, cx, cy)。 if (IsWindow(::GetDlgItem(m_hWnd, IDC_TRACE))) { CRect my_rect。 GetClientRect(my_rect)。//獲得當(dāng)前客戶區(qū)窗口大小 //設(shè)置日子模塊窗口大小和當(dāng)前窗口一樣大小 ((CColorListBox*)GetDlgItem(IDC_TRACE))MoveWindow(my_rect)。 }} 在線用戶模塊在線用戶模塊的主要功能為顯示當(dāng)前連接上服務(wù)器的用戶。其顯示內(nèi)容有:用戶登錄用戶名,用戶IP,用戶登錄時間。顯示方法為使用ClistCtrl控件將顯示內(nèi)容顯示在其上。ClistCtrl控件常用操作方法如下。1)設(shè)置ClistCtrl類型。DWORD SetExtendedStyle(DWORD dwNewStyle);其中LVS_EX_CHECKBOXES 表示添加CheckBox,LVS_EX_FULLROWSELECT 表示選擇整行,LVS_EX_GRIDLINES 表示添加表格線。如果設(shè)置了LVS_EX_CHECKBOXES屬性,則可以用BOOL GetCheck( int nItem ) const;來得到某一行是否Checked。2) 刪除操作。BOOL DeleteItem( int nItem),刪除指定的元素,nItem為要刪除的元素。BOOL DeleteAllItems( ),刪除所有的元素。3) 插入元素操作。int InsertItem( int nItem, LPCTSTR lpszItem),nItem為插入元素索引號,lpszItem為插入元素標(biāo)簽地址。4)插入列操作。int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int Width = 1, int nSubItem = 1 ),nCol為新列索引號,lpszColumnHeading列元素存放名稱地址。5)設(shè)置列寬操作。BOOL SetColumnWidth( int nCol, int cx ), nCol列所引號,cx設(shè)置寬度。6)設(shè)置元素值操作。BOOL SetItemText(int nItem,int nSubItem, LPCTSTR lpszText ),nItem設(shè)置元素,nSubItem設(shè)置子元素,lpszText值內(nèi)容地址。 在線用戶模塊設(shè)計流程圖Fig. Online user modular design flow chart。 在線用戶模塊運行界面圖Fig. Online user modular running interface在線用戶模塊的實現(xiàn)主要通過設(shè)計CFTP_OnlineUsers_Child類來實現(xiàn),其主要功能函數(shù)如下:1. OnInitDialog() 函數(shù)。OnInitDialog()為在線用戶模塊對話框初始函數(shù),在線用戶模塊在這里為在線用戶List顯示控件,增添三個
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1