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

正文內(nèi)容

ftp服務(wù)與客戶端系統(tǒng)設(shè)計(jì)—免費(fèi)-在線瀏覽

2024-09-16 16:47本頁(yè)面
  

【正文】 MFC 是兼容的。MFC 也回得到擴(kuò)展,添加新的特性、變得更加容易建立應(yīng)用程序。MFC 中包含了上成千上萬(wàn)行正確、優(yōu)化和功能強(qiáng)大的 Windows 代碼。從這點(diǎn)上將,MFC 極大地加快了你的程序開發(fā)速度。最重要的是MFC類庫(kù)在提供的對(duì)象的各種屬性和方法都是經(jīng)過(guò)謹(jǐn)慎的編寫和嚴(yán)格的測(cè)試,可靠性很高,這就保證了使用MFC類庫(kù)不會(huì)影響程序的可靠性和正確性。一個(gè)例外是菜單(CMenu)不是從窗口派生 的。 2).CDocument文檔,負(fù)責(zé)內(nèi)存數(shù)據(jù)與磁盤的交互。 3).CView視圖,負(fù)責(zé)內(nèi)存數(shù)據(jù)與用戶的交互。最重要的是OnDraw(重畫窗 口),通常用CWnd::Invalidate()來(lái)啟動(dòng)它。你自己的許多功能都要加在 里面,你打交道最多的就是它。無(wú)論是顯示器還是打印機(jī),都是畫圖給用戶看。CDC與其他GDI(圖形設(shè)備接口)一起,完成文字和圖形、圖 像的顯示工作。CDC有個(gè)常用子類CClientDC(窗口客戶區(qū)),畫圖通常通過(guò) CClientDC完成。 6).CWinApp應(yīng)用程序類。最常用函數(shù)InitInstance():初始化。它們都需要在使用前選進(jìn)DC。 9).CBrush刷子,填充。 11).CBitmap位圖。 13).CRgn區(qū)域,指定一塊區(qū)域可以用于做特殊處理。最重要的不外是Open(打開),Read(讀入),Write(寫)。封裝了C中的字符數(shù)組,非常實(shí)用。 17).CRect矩形,就是(left,top,right,bottom)。 本文工作內(nèi)容本文的主要工作為FTP服務(wù)器和客戶端的設(shè)計(jì)?!?在線用戶模塊?!?統(tǒng)計(jì)模塊。(2)客戶端設(shè)計(jì):● 連接服務(wù)器模塊?!?下載文件模塊。服務(wù)器設(shè)計(jì)模塊包括:服務(wù)器日志模塊,在線用戶模塊,程序設(shè)置模塊 ,統(tǒng)計(jì)模塊,安全模塊。 FTP服務(wù)器整體設(shè)計(jì) 服務(wù)器設(shè)計(jì)模塊包括:服務(wù)器日志模塊,在線用戶模塊,程序設(shè)置模塊 ,統(tǒng)計(jì)模塊,安全模塊。服務(wù)器日志模塊的主要功能為顯示和記錄用戶的登錄信息和一系列的操作信息。在線用戶模塊。程序設(shè)置模塊。例如允許用戶下載,允許用戶上傳等一些列用戶對(duì)服務(wù)器的操作參數(shù)配置。統(tǒng)計(jì)模塊的主要功能為統(tǒng)計(jì)歷史時(shí)間上,服務(wù)器各種操作的總量并顯示。安全模塊。主要配置內(nèi)容為設(shè)置允許接入服務(wù)器的IP和禁止接入服務(wù)器的IP。 FTP客戶端模塊設(shè)計(jì)層次圖Fig. FTP client module level design plans連接服務(wù)器模塊。上傳文件模塊。下載文件模塊。第3章 FTP服務(wù)器模塊設(shè)計(jì)服務(wù)器的主要設(shè)計(jì)模塊為五個(gè)模塊:服務(wù)器日志模塊,在線用戶模塊,程序設(shè)置模塊 ,統(tǒng)計(jì)模塊,安全模塊。其具體顯示和記錄的日志信息為:服務(wù)器日志模塊一直等待主程序接收到的日志到來(lái);當(dāng)日志消息到來(lái)時(shí),將日志消息添加入日志消息顯示隊(duì)列,然后發(fā)送日志消息顯示消息,繼續(xù)等待;服務(wù)器日志模塊接收到日志消息顯示消息時(shí),響應(yīng)消息,將日志消息顯示。Add_Log_Message函數(shù)的主要功能為向服務(wù)器日志信息顯示List控件增加一個(gè)元素,用以顯示到來(lái)的信息。 va_list args。 (pstr, args)。 GetLocalTime(amp。 p_Log_Level_sheep = n。 ()。 ()。 }2. On_Trace_Ack(WPARAM, LPARAM)函數(shù)。其函數(shù)實(shí)現(xiàn)代碼為:LRESULT CFTP_Trace_Child::On_Trace_Ack(WPARAM, LPARAM){ CLogMsg *pLog_sheep。 //判斷日志消息類別用不同顏色將其顯示 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==3) ((CColorListBox*)GetDlgItem(IDC_TRACE)) AddString(pLog_sheep_Text_sheep, RGB(255,0,0))。 delete pLog_sheep。}3. OnSize(UINT nType, int cx, int cy)函數(shù)。在事件響應(yīng)函數(shù)OnSize中,日子模塊改變窗口大小,使其和主窗口保持大小比例。 if (IsWindow(::GetDlgItem(m_hWnd, IDC_TRACE))) { CRect my_rect。//獲得當(dāng)前客戶區(qū)窗口大小 //設(shè)置日子模塊窗口大小和當(dāng)前窗口一樣大小 ((CColorListBox*)GetDlgItem(IDC_TRACE))MoveWindow(my_rect)。其顯示內(nèi)容有:用戶登錄用戶名,用戶IP,用戶登錄時(shí)間。ClistCtrl控件常用操作方法如下。LVS_EX_CHECKBOXES 表示添加CheckBox,LVS_EX_GRIDLINES 表示添加表格線。BOOL GetCheck( int nItem ) const;來(lái)得到某一行是否Checked。BOOL DeleteItem( int nItem),刪除指定的元素,nItem為要?jiǎng)h除的元素。3) 插入元素操作。4)插入列操作。BOOL SetColumnWidth( int nCol, int cx ), nCol列所引號(hào),cx設(shè)置寬度。BOOL SetItemText(int nItem,int nSubItem, LPCTSTR lpszText ),nItem設(shè)置元素,nSubItem設(shè)置子元素,lpszText值內(nèi)容地址。 在線用戶模塊設(shè)計(jì)流程圖Fig. Online user modular design flow chart。OnInitDialog()為在線用戶模塊對(duì)話框初始函數(shù),在線用戶模塊在這里為在線用戶List顯示控件,增添三個(gè)元素:“用戶名”,“IP地址”,“登陸時(shí)間”,用來(lái)顯示登陸用戶的信息。 ((CListCtrl*)GetDlgItem(IDC_ONLINE_USERS)) InsertColumn(0, ThreadID)。 //向List控件添加IP 地址列元素 ((CListCtrl*)GetDlgItem(IDC_ONLINE_USERS)) InsertColumn(2, IP 地址)。 DWORD dwStyle = ((CListCtrl*)GetDlgItem(IDC_ONLINE_USERS)) GetExtendedStyle()。 ((CListCtrl*)GetDlgItem(IDC_ONLINE_USERS)) SetExtendedStyle(dwStyle)。}2. User_Add_sheep(DWORD nID, LPCTSTR lpName, LPCTSTR lpAddress)函數(shù)。當(dāng)有新的用戶登錄服務(wù)器時(shí),在線用戶模塊調(diào)用User_Add_sheep函數(shù),顯示新的登錄用戶信息。 (%d, nID)。 = LVFI_PARTIAL|LVFI_STRING。 int nIndex。info_sheep) , nIndex== 1) { nIndex = ((CListCtrl*)GetDlgItem(IDC_ONLINE_USERS))InsertItem(0, my_strThreadID)。 return。 //顯示用戶登錄IP地址 ((CListCtrl*)GetDlgItem(IDC_ONLINE_USERS)) SetItemText(nIndex, 2, lpAddress)。 }3. Delete_User_sheep(DWORD nID)函數(shù)。當(dāng)有用戶下線時(shí)或則斷開服務(wù)器連接時(shí),在線用戶模塊調(diào)用Delete_User_sheep函數(shù),刪除相應(yīng)的登錄用戶信息。 CString my_strThreadID。 = LVFI_PARTIAL|LVFI_STRING。 int nIndex。info_sheep) , nIndex != 1) { ((CListCtrl*)GetDlgItem(IDC_ONLINE_USERS))DeleteItem(nIndex)。} 程序設(shè)置模塊程序設(shè)置模塊的主要功能為配置服務(wù)器參數(shù)。其程序設(shè)計(jì)方法為:系統(tǒng)時(shí)刻監(jiān)控程序設(shè)置模塊,當(dāng)程序設(shè)置模塊觸發(fā)應(yīng)用消息時(shí),系統(tǒng)重新讀入配置信息;當(dāng)程序設(shè)置模塊觸發(fā)查看Log信息時(shí),打開Log文件;當(dāng)程序設(shè)置模塊觸發(fā)清除Log信息時(shí),清空Log文件。 程序設(shè)置模塊運(yùn)行界面圖Fig. Procedures settings modular running interface程序設(shè)置模塊的實(shí)現(xiàn)主要通過(guò)設(shè)計(jì)CFTP_Configuration_Child:類來(lái)實(shí)現(xiàn),其主要功能函數(shù)如下:1. OnDestroy()函數(shù)。當(dāng)主程序退出時(shí),銷毀程序設(shè)置模塊,此時(shí)程序設(shè)置模塊調(diào)用OnDestroy函數(shù)讀取配置參數(shù),并將其寫入配置文件中存儲(chǔ)。 int port,user_Num,user_Time。 sscanf(str_port,%d,amp。 GetDlgItem(IDC_MAX_USERS)GetWindowText(str_user_Num)。user_Num)。 sscanf(str_user_Time,%d,amp。 BOOL Launch_On,Start_InTray,Auto_Activate。 else Launch_On=FALSE。 else Start_InTray=FALSE。 else Auto_Activate=FALSE。 //存儲(chǔ)服務(wù)器最大連接用戶數(shù)配置 if(!AfxGetApp()WriteProfileInt(FTPSer, MaxUsers,user_Num)) AfxMessageBox(服務(wù)器最大用戶配置失敗)。 //存儲(chǔ)服務(wù)器開機(jī)啟動(dòng)配置 if((!AfxGetApp()WriteProfileInt(FTPSer, LaunchOnStartup, Launch_On)) amp。 (!AfxGetApp()WriteProfileInt(FTPSer, StartInTray, Start_InTray)) amp。 (!AfxGetApp()WriteProfileInt(FTPSer, AutoActivate, Auto_Activate)) ) AfxMessageBox(服務(wù)器啟動(dòng)方式配置失敗)。}2. sheep_View ()函數(shù)。當(dāng)用點(diǎn)擊查看日志按鈕時(shí),程序設(shè)置模塊調(diào)用sheep_View ()函數(shù)打開日志文件。 //日志文件打開失敗錯(cuò)誤消息顯示 if(ExecStatus=32) AfxMessageBox(打開Log文件出錯(cuò))。ClearLog ()函數(shù)為程序設(shè)置模塊的日志文件清空函數(shù)。函數(shù)實(shí)現(xiàn)代碼如下:void CFTP_Configuration_Child::ClearLog() { ()。Configure_Apply ()函數(shù)為程序設(shè)置模塊程序設(shè)置參數(shù)存儲(chǔ)函數(shù)。當(dāng)用戶修改完程序設(shè)置參數(shù)后,點(diǎn)擊應(yīng)用按鈕后,程序設(shè)置模塊調(diào)用Configure_Apply ()函數(shù)使新設(shè)置參數(shù)生效。 int port,user_Num,user_Time。 sscanf(str_port,%d,amp。 GetDlgItem(IDC_MAX_USERS)GetWindowText(str_user_Num)。user_Num)。 sscanf(str_user_Time,%d,amp。 BOOL Launch_On,Start_InTray,Auto_Activate。 else Launch_On=FALSE。 else Start_InTray=FALSE。 else Auto_Activate=FALSE。 //存儲(chǔ)服務(wù)器最大連接用戶數(shù)配置 if(!AfxGetApp()WriteProfileInt(FTPSer, MaxUsers,user_Num)) AfxMessageBox(服務(wù)器最大用戶配置失敗)。 //存儲(chǔ)服務(wù)器開機(jī)啟動(dòng)配置 if((!AfxGetApp()WriteProfileInt(FTPSer, LaunchOnStartup, Launch_On)) amp。 (!AfxGetApp()WriteProfileInt(FTPSer, StartInTray, Start_InTray)) amp。 (!AfxGetApp()WriteProfileInt(FTPSer, AutoActivate, Auto_Activate)) ) AfxMessageBox(服務(wù)器啟動(dòng)方式配置失敗)。} 統(tǒng)計(jì)模塊統(tǒng)計(jì)模塊的主要功能為統(tǒng)計(jì)歷史時(shí)間上,服務(wù)器各種操作的總量并顯示。其設(shè)計(jì)方法為:當(dāng)有用戶登錄成功后,加一總連接用戶數(shù),加一在線用戶數(shù);當(dāng)有用戶下線時(shí),減一在線用戶數(shù);當(dāng)有用戶下載文件時(shí),加一文件總下載數(shù),下載文件總量加上下載文件大小,如果下載失敗,加一下載失敗總數(shù);當(dāng)有上傳文件時(shí),
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1