




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上東南大學(xué)自動(dòng)化學(xué)院實(shí) 驗(yàn) 報(bào) 告課程名稱(chēng): 信息通信網(wǎng)絡(luò)概論 第2次實(shí)驗(yàn)實(shí)驗(yàn)名稱(chēng): FTP客戶(hù)端通信程序設(shè)計(jì) 院 (系): 自動(dòng)化 專(zhuān) 業(yè): 自動(dòng)化 姓 名: 學(xué) 號(hào): 實(shí) 驗(yàn) 室: 金智樓5樓 實(shí)驗(yàn)組別: 同組人員: 實(shí)驗(yàn)時(shí)間: 2016 年 12 月 13 日評(píng)定成績(jī): 審閱教師: 目 錄一實(shí)驗(yàn)?zāi)康暮鸵?#183;·····················
2、···············3二實(shí)驗(yàn)原理··································
3、·········3三. 實(shí)驗(yàn)方案與實(shí)驗(yàn)步驟·································3四實(shí)驗(yàn)設(shè)備與器材配置····
4、·····························4五實(shí)驗(yàn)記錄····················
5、·······················4六實(shí)驗(yàn)總計(jì)··························
6、·················8七思考題或討論題·······························
7、83;·····9附錄:部分代碼一 實(shí)驗(yàn)?zāi)康暮鸵?. 了解Windows下的TCP/IP通信方式與網(wǎng)絡(luò)操作;2. 熟悉FTP的編程的過(guò)程;3. 學(xué)會(huì)用可視化編程語(yǔ)言編寫(xiě)調(diào)試簡(jiǎn)單的通信程序。二 實(shí)驗(yàn)原理在使用MFC編程時(shí),要連接到FTP服務(wù)器是一件非常簡(jiǎn)單的事情,只需要兩個(gè)簡(jiǎn)單的步驟,首先必須建立一個(gè)CinternetSession對(duì)象,用類(lèi)CinternetSession創(chuàng)建并初始化一個(gè)或幾個(gè)同時(shí)存在的Internet會(huì)話(huà)(Session),并描述與代理服務(wù)器的連接(如果有必要的話(huà)),如果在程序運(yùn)行期間需要保持與Internet的廉潔,可以創(chuàng)
8、建一個(gè)CinternetSession對(duì)象作為類(lèi)CwinApp的成員。 MFC中的類(lèi)CftpConnection管理我們與Internet服務(wù)器的連接,并直接操作服務(wù)器上的目錄和文件,F(xiàn)TP時(shí)MFC的WinInet支持的三個(gè)Internet功能之一,我們需要先創(chuàng)建一個(gè)CinternetSession實(shí)例和一個(gè)CftpConnection對(duì)象就可以實(shí)現(xiàn)和一個(gè)FTP服務(wù)器通信,我們不需要直接創(chuàng)建CftpConnection對(duì)象,而是通過(guò)調(diào)用CinternetSession:GetFtpConnection來(lái)完成這項(xiàng)工作。他創(chuàng)建CFtpConnection對(duì)象并返回一個(gè)指向該對(duì)象的指針。三 實(shí)驗(yàn)方案
9、與實(shí)驗(yàn)步驟(請(qǐng)繪制流程圖)1、 實(shí)驗(yàn)方案圖3.1 流程圖2、 實(shí)驗(yàn)步驟1) 創(chuàng)建一個(gè)internet會(huì)話(huà);2) 建立與FTP服務(wù)器的連接;3) 如果連接成功,獲得當(dāng)前登陸的缺省目錄下所有的文件和目錄名稱(chēng);4) 下載文件或上傳文件;5) 關(guān)閉連接。四 實(shí)驗(yàn)設(shè)備與器材配置電腦、VC6.0五 實(shí)驗(yàn)記錄1、界面(1) 輸入:域名、用戶(hù)名、密碼;(2) 輸出顯示:文件目錄列表、當(dāng)前目錄;(3) 按鈕:連接、返回、上傳、下載、刪除、關(guān)閉。圖5.1 界面設(shè)計(jì)2、功能描述(1)連接到FTP主機(jī),下載FTP文件服務(wù)器文件列表圖5.2 連接到FTP主機(jī),下載FTP文件服務(wù)器文件列表(2)切換訪問(wèn)目錄;圖5.3切換
10、訪問(wèn)目錄(3)向FTP服務(wù)器發(fā)送文件;圖5.4 向FTP服務(wù)器發(fā)送文件(4)從FTP服務(wù)器下載文件。圖5.5 從FTP服務(wù)器下載文件3、改進(jìn)(1)從子目錄返回根目錄(按鈕“返回”)運(yùn)用函數(shù)SetCurrentDirectory()設(shè)定當(dāng)前文件路徑為"",即默認(rèn)為根目錄。(2)顯示當(dāng)前目錄(顯示框“當(dāng)前目錄”)在切換目錄后,顯示當(dāng)前文件所在目錄。即在用戶(hù)雙擊文件夾時(shí)將雙擊的文件夾名稱(chēng)添加為上一級(jí)目錄,利用strSourceName實(shí)現(xiàn)。(3)刪除當(dāng)前目錄下的文件(按鈕“刪除”)獲得列表中的數(shù)據(jù),再獲得用戶(hù)在列表框中的選擇。如果選擇的是文件夾,則警告“不能刪除文件夾”;如果選擇
11、的是文件,則運(yùn)用Remove()函數(shù)將選中的文件刪除。圖5.6 改進(jìn)功能六 實(shí)驗(yàn)總結(jié)1、實(shí)驗(yàn)結(jié)果分析(1) 基礎(chǔ)功能都能夠較好的實(shí)現(xiàn),在下載、上傳文件的基礎(chǔ)上增加刪除的操作,能夠?qū)TP站點(diǎn)中的文件刪除;(2) 返回功能中,只能返回到根目錄,不能實(shí)現(xiàn)返回上一級(jí)目錄,嘗試?yán)煤瘮?shù)GetCurrentDirectory()實(shí)現(xiàn),沒(méi)有能夠做到,希望在后期的學(xué)習(xí)過(guò)程中能夠解決這個(gè)問(wèn)題。2、總結(jié)思考通過(guò)整個(gè)實(shí)驗(yàn)的學(xué)習(xí),我對(duì)FTP的基本工作原理和工作流程有了非常深入的了解,并且對(duì)處理文件的一些函數(shù)如GetFileName()、IsDirectory()、GetFile()、PutFile()、SetCur
12、rentDirectory()、FindNextFile()、FindFile()、CftpFileFind()和與FTP建立會(huì)話(huà)和連接的函數(shù)CinternetSession()、GetFtpConnection()能夠理解并熟練掌握。在對(duì)代碼改進(jìn)的過(guò)程中,又學(xué)習(xí)到很多其他的函數(shù),能夠利用已有的代碼結(jié)構(gòu)進(jìn)行改進(jìn)完善,實(shí)現(xiàn)功能,對(duì)于一些常見(jiàn)的錯(cuò)誤也能夠正確的改正,操作也更加熟練。相信在以后的學(xué)習(xí)過(guò)程中一定能夠熟練運(yùn)用這次實(shí)驗(yàn)中學(xué)到的東西。由于在實(shí)驗(yàn)室未能及時(shí)做完,所以用自己電腦嘗試搭建FTP站點(diǎn),學(xué)習(xí)到其整個(gè)搭建過(guò)程和一些權(quán)限設(shè)置過(guò)程,并且成功利用自己搭建的FTP調(diào)試了程序。七 思考題或討論題1
13、. 簡(jiǎn)述FTP客戶(hù)端有幾個(gè)進(jìn)程工作,分別完成哪些工作?(1) 主進(jìn)程,負(fù)責(zé)接受新的請(qǐng)求。打開(kāi)熟知端口(端口號(hào)為 21),使客戶(hù)進(jìn)程能夠連接上;等待客戶(hù)進(jìn)程發(fā)出連接請(qǐng)求;啟動(dòng)從屬進(jìn)程來(lái)處理客戶(hù)進(jìn)程發(fā)來(lái)的請(qǐng)求。從屬進(jìn)程對(duì)客戶(hù)進(jìn)程的請(qǐng)求處理完畢后即終止,但從屬進(jìn)程在運(yùn)行期間根據(jù)需要還可能創(chuàng)建其他一些子進(jìn)程?;氐降却隣顟B(tài),繼續(xù)接受其他客戶(hù)進(jìn)程發(fā)來(lái)的請(qǐng)求。主進(jìn)程和從屬進(jìn)程的處理是并發(fā)進(jìn)行的。(2) 若干個(gè)從屬進(jìn)程,負(fù)責(zé)處理單個(gè)請(qǐng)求。2. FTP服務(wù)與NFS服務(wù)有什么區(qū)別。(1) NFS(網(wǎng)絡(luò)文件系統(tǒng))是TCP/IP協(xié)議集所提供的一種子協(xié)議,該協(xié)議可以實(shí)現(xiàn)LINUX/UNIX主機(jī)之間的文件共享。本質(zhì)上是文
14、件系統(tǒng),主要在Unix系列上使用,基于層,可以將遠(yuǎn)程的計(jì)算機(jī)磁盤(pán)掛載到本地,像一樣操作。(2) FTP(文件傳輸協(xié)議)是所提供的一種子協(xié)議,該子協(xié)議具體可以實(shí)現(xiàn)在以下功能:從客戶(hù)向服務(wù)器發(fā)送一個(gè)文件;從服務(wù)器向客戶(hù)發(fā)送一個(gè)文件;從服務(wù)器向客戶(hù)發(fā)送文件或目錄列表。附錄:(部分代碼)1、 返回功能void CFtpDlg:OnReturn() m_strPath = "根目錄"UpdateData(FALSE);if(pConnection->SetCurrentDirectory("")/設(shè)置當(dāng)前文件路徑為根目錄while(m_ListFile.Ge
15、tCount()!=0)m_ListFile.DeleteString(0);Find();2、 目錄顯示功能代碼如下:void CFtpDlg:OnDblclkListFile() UpdateData(TRUE);int nSel = m_ListFile.GetCurSel();CString strSourceName;/獲得用戶(hù)在列表框中的選擇m_ListFile.GetText(nSel,strSourceName);if(strSourceName.GetAt(0)='')/選擇的是目錄strSourceName.Delete(0,1);strSourceName
16、.Delete(strSourceName.GetLength()-1,1);m_strPath = m_strPath+""+strSourceName;/顯示當(dāng)前目錄UpdateData(FALSE);if(pConnection->SetCurrentDirectory(strSourceName)while(m_ListFile.GetCount()!=0)m_ListFile.DeleteString(0);Find();3、 刪除功能代碼如下:void CFtpDlg:OnDelete() / TODO: Add your control notifica
17、tion handler code here/獲得當(dāng)前輸入U(xiǎn)pdateData(TRUE);int nSel = m_ListFile.GetCurSel();/返回列表中被選擇的項(xiàng)CString strSourceName;/獲得用戶(hù)在列表框中的選擇m_ListFile.GetText(nSel, strSourceName);if (strSourceName.GetAt(0) != '')/選擇的是文件CFileDialog dlg(FALSE, "", strSourceName);/獲得文件源地址if (pConnection->Remove(strSourceName)AfxMessageBox("刪除成功! ", MB_OK | MB_ICONINFORMATION);while(m_ListFile.GetCount()!=0)m_ListFile.DeleteString(0);Find();elseAfxMessageBox("刪除失敗! ", MB_OK | MB_ICONSTOP);else/選擇的是目錄AfxMessageBox("不能刪除文件夾! ", MB_OK | M
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 腦脊液外露護(hù)理規(guī)范與實(shí)施要點(diǎn)
- 公司管理模式
- 酒吧不賣(mài)煙協(xié)議書(shū)(2篇)
- 2024高中歷史課下能力提升十九戰(zhàn)后資本主義的新變化含解析新人教版必修2
- 急性傳染病預(yù)防體系構(gòu)建
- 腫瘤病人護(hù)理
- 寵物皮膚病診療與健康管理培訓(xùn)
- 關(guān)于深入實(shí)施西部大開(kāi)發(fā)戰(zhàn)略政策意見(jiàn)的實(shí)施細(xì)則
- 2025屆黑龍江省大慶外國(guó)語(yǔ)學(xué)校高三下學(xué)期適應(yīng)性檢測(cè)歷史試題(含答案)
- 護(hù)理評(píng)審匯報(bào)
- 直流系統(tǒng)培訓(xùn)課件
- 傣族文化知識(shí)介紹
- 山東省歷年中考語(yǔ)文現(xiàn)代文閱讀之非連續(xù)性文本閱讀20篇(截至2024年)
- 2024年內(nèi)蒙古呼和浩特中考化學(xué)真題卷及答案解析
- 2024年09月全國(guó)2024廈門(mén)國(guó)際銀行青年銀行家(分行市場(chǎng)類(lèi))校園招考筆試歷年參考題庫(kù)附帶答案詳解
- DB32∕T 3219-2017高速公路擴(kuò)建工程技術(shù)標(biāo)準(zhǔn)
- 保護(hù)環(huán)境的課件英文版
- 幼兒園講解海軍知識(shí)
- 2024年官方獸醫(yī)考試題庫(kù)及參考答案
- 慢性腎臟病肌少癥診斷治療與預(yù)防專(zhuān)家共識(shí)(2024年版)解讀
- 中建消防專(zhuān)項(xiàng)施工方案
評(píng)論
0/150
提交評(píng)論