99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

英創(chuàng)信息技術(shù)ARM9工控主板文件傳送介紹

英創(chuàng)信息技術(shù) ? 來源:英創(chuàng)信息技術(shù) ? 作者:英創(chuàng)信息技術(shù) ? 2019-11-13 09:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

文件傳送協(xié)議(FTP — File Transfer Protocol)是TCP/IP提供的標準機制,用來從一臺主機將文件復(fù)制到另一臺主機。從一臺計算機向另一臺計算機傳送文件是在聯(lián)網(wǎng)或互聯(lián)網(wǎng)環(huán)境中常見的任務(wù)。

英創(chuàng)ARM9系列工控主板預(yù)裝正版WinCE5.0操作系統(tǒng),WinCE內(nèi)核提供了FTP Server應(yīng)用程序,這為通過FTP實現(xiàn)文件傳送提供了方便,在本公司網(wǎng)站文章《ARM9工控主板WinCE應(yīng)用程序的遠程FTP自動更新》中介紹的方案,就是利用WinCE內(nèi)核提供的FTP Server實現(xiàn)的應(yīng)用程序遠程更新。但在很多應(yīng)用場合,是工控主板作為本地FTP客戶端與遠端FTP服務(wù)器交換文件,為此需要程序員自己編寫在ARM9主板上運行的FTP客戶端的程序。對于WinCE操作系統(tǒng),Microsoft提供了如FtpGetFile()、FtpPutFile()等用于文件傳送的函數(shù),程序員利用這些函數(shù),可以方便的編寫出FTP客戶端程序。但如果網(wǎng)絡(luò)環(huán)境復(fù)雜或采用GPRS網(wǎng)絡(luò),由于GPRS網(wǎng)絡(luò)原因,網(wǎng)絡(luò)連接很容易中斷,如果每次連接中斷,整個文件都重新傳送,一個稍大的文件基本上不能成功傳送,此時就要求FTP文件傳送具有斷點續(xù)傳功能。

斷點續(xù)傳是指在文件的傳送過程中,因為網(wǎng)絡(luò)或其它原因至使傳送過程中斷,當(dāng)再次傳送這個文件時,將從已傳送的部份開始,繼續(xù)未完成部份傳送,不用從頭對整個文件進行傳送,這樣可以節(jié)省時間,節(jié)約網(wǎng)絡(luò)流量,提高文件傳送速度。對于在GPRS網(wǎng)絡(luò)上應(yīng)用的FTP,斷點續(xù)傳功能顯得尤為重要,但Microsoft提供的FTP API中,卻沒有支持斷點續(xù)傳的函數(shù),為此,英創(chuàng)公司針對斷點續(xù)傳這一要求,直接采用SOCKET API,封裝了一個支持斷點續(xù)傳的FTP客戶端靜態(tài)庫EM_FTPClient.LIB,下面對這個庫函的API函數(shù)做詳細說明。

支持斷點續(xù)傳的FTP庫函數(shù)說明:

(1)bool Logon( LPCTSTR lpszHostIP, LPCTSTR lpszUserName=_T(‘’), LPCTSTR lpszPassword=_T(‘’), int nTimeOut=5000 );

功能描述:登錄到FTP服務(wù)器

輸入?yún)?shù) lpszHostIP:服務(wù)器IP

lpszUserName:用戶名

lpszPassword:用戶密碼(當(dāng)用戶名用與用戶密碼為空時,將匿名登錄)

nTimeOut:超時設(shè)置 1000(mS)《=nTimeOut《=60000(mS)

返回值 = TRUE:登錄FTP服務(wù)器成功

FALSE:登錄FTP服務(wù)器失敗

(2)bool ChangeDir( LPCTSTR lpszRemoteDir=_T(‘\\’) );

功能描述:設(shè)置遠端FTP服務(wù)器當(dāng)前目錄

輸入?yún)?shù) lpszRemoteDir:服務(wù)器目錄

返回值 = TRUE:目錄更改成功

FALSE:目錄更改失敗

(3)bool ListAll( FILELIST* fileList );

功能描述:獲取FTP服務(wù)器當(dāng)前目錄下的所有文件的列表

輸入?yún)?shù) fileList:接收文件列表的結(jié)構(gòu)體

返回值 = TRUE:獲取文件列表成功

= FALSE:獲致文件列表失敗

文件列表數(shù)據(jù)結(jié)構(gòu)定義如下:

typedef struct

{

int nFileNum; //當(dāng)前目錄文件個數(shù)

TCHAR FileList[MAXFILENUM][MAX_PATH]; //文件名列表

//(注:當(dāng)nFileNum = 0 時,此數(shù)組中的內(nèi)容無效)

}FILELIST;

(4)bool GetFile( LPCTSTR lpszLocalFile, LPCTSTR lpszRemoteFile, int nMode = 0, bool bResume=FALSE );

功能描述:從FTP服務(wù)器上下載指定文件(如果下載的文件已存在于本地當(dāng)前目錄下,將覆蓋下載)

輸入?yún)?shù) lpszLocalFile:存儲為本地文件名

lpszRemoteFile:下載的指定文件

nMode:傳輸模式 =0: 二進制模式 =1: 文本模式

bResume:斷點續(xù)傳標志

=TRUE:繼點續(xù)傳

(程序?qū)鞌郌TP連接,重新執(zhí)行Logon(),ChangeDir(),然后下載)

=FALSE: 正常下載

返回值 = TRUE:開始下載

FALSE:開始下載失敗

(5)bool DelFile( LPCTSTR lpszFileName)

功能描述:刪除遠端FTP服務(wù)器當(dāng)前目錄下指定文件

輸入?yún)?shù) lpszFileName:指定要刪除的文件

返回值 = TRUE:刪除成功

FALSE:刪除失敗

(6)bool Logoff( );

功能描述:注銷與遠端FTP服務(wù)器的連接

(7)void Abort( );

功能描述:中斷與遠端FTP服務(wù)器的連接

(8)FTPSTATUS* GetStatus( );

功能描述:獲取當(dāng)前文件的下載狀態(tài)

返回值: 指向當(dāng)前下載文件狀態(tài)數(shù)據(jù)結(jié)構(gòu)的指針

文件下載狀態(tài)數(shù)據(jù)結(jié)構(gòu)定義如下:

typedef struct

{

int nSucceed; //上傳/下載是否成功

//=0:文件正在傳輸,=1文件傳輸成功,=-1文件傳輸失敗

int nErrCnt; //重傳次數(shù)

int nMode; //上傳=1,下載=2

int nStatus; // FTP狀態(tài)

DWORD dwFileSize; //文件字節(jié)數(shù)

DWORD dwCompleteSize; // 已完成字節(jié)數(shù)

}FTPSTATUS;

(9)int GetErrorCode( );

功能描述:獲取最后一次錯誤的錯誤碼

返回值:錯誤碼(錯誤碼的定義請參看EM_FTPClient.H)

補充說明:

1、在調(diào)用GetFile()函數(shù)時,如果將bResum設(shè)置為TRUE,程序?qū)⒆詣訄?zhí)行以下步驟:

↓調(diào)用Abort( )中斷與FTP服務(wù)器的連接

↓調(diào)用Logon( )登錄到FTP服務(wù)器

↓調(diào)用ChangeDir( )設(shè)置FTP服務(wù)器當(dāng)前目錄

↓從已完成傳送的部份繼續(xù)下載

其中Logon()和ChangeDir( )的參數(shù)是最后一次調(diào)用Logon()和ChangeDir( )傳入的值。

2、調(diào)用GetFile()函數(shù)返回為TRUE時,并不是表示文件下載成功,只表明文件開始下載。主程序應(yīng)該通過判斷FTPSTATUS數(shù)據(jù)結(jié)構(gòu)中的nSucceed值來確認下載是否成功。

3、現(xiàn)在的FTP服務(wù)器普遍支持PASV模式,因此本FTP Client僅支持PASV模式數(shù)據(jù)傳送。

4、英創(chuàng)公司提供相應(yīng)的測試例程,感興趣的客戶可向英創(chuàng)索要相關(guān)代碼。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6100

    瀏覽量

    36296
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    ARM9工控主板支持斷點續(xù)傳的FTP文件傳送

    文件傳送協(xié)議(FTPFile Transfer Protocol)是TCP/IP提供的標準機制,用來從一臺主機將文件復(fù)制到另一臺主機。從一臺計算機向另一臺計算機傳送
    發(fā)表于 02-19 11:02 ?40次下載

    創(chuàng)ARM9工控主板應(yīng)用程序自動加載實現(xiàn)

    創(chuàng)ARM9工控主板有兩種工作模式:調(diào)試模式和運行模式。調(diào)試模式是指開機以后系統(tǒng)處于調(diào)試狀態(tài),此時用戶可以通過eVC的遠程調(diào)試工具或微軟的A
    的頭像 發(fā)表于 10-08 17:13 ?2126次閱讀

    創(chuàng)信息技術(shù)VS2005調(diào)試ARM9核心板簡介

    創(chuàng)公司自2007年開始陸續(xù)推出一系列以ARM9 CPU為核心的嵌入式主板(如EM9000、EM9260),這些高性能的工控
    的頭像 發(fā)表于 10-31 15:03 ?2193次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b>VS2005調(diào)試<b class='flag-5'>ARM9</b>核心板簡介

    創(chuàng)信息技術(shù)ARM9工控主板WinCE應(yīng)用程序遠程控制應(yīng)用

    創(chuàng)公司推出的ARM9嵌入式工控主板產(chǎn)品系列,均預(yù)裝了正版的WinCE5.0操作系統(tǒng)。微軟的WINCE實時多任務(wù)操作系統(tǒng)是嵌入式領(lǐng)域的主流操
    的頭像 發(fā)表于 11-04 09:28 ?2018次閱讀

    創(chuàng)信息技術(shù)ARM9工控主板內(nèi)嵌AD概述

    創(chuàng)公司推出的ARM9 嵌入式工控主板產(chǎn)品系列,均預(yù)裝了正版WinCE5.0 操作系統(tǒng)。
    的頭像 發(fā)表于 11-04 09:43 ?3072次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>ARM9</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>內(nèi)嵌AD概述

    創(chuàng)信息技術(shù)ARM9工控板在遠程監(jiān)控領(lǐng)域的應(yīng)用

    創(chuàng)ARM9工控主板的數(shù)據(jù)采集功能通常采用板上的GPIO實現(xiàn)數(shù)字輸入輸出、通過精簡ISA總線擴展相應(yīng)的AD或DA實現(xiàn)模擬數(shù)據(jù)的輸入輸出。在
    的頭像 發(fā)表于 11-12 10:04 ?2145次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>ARM9</b><b class='flag-5'>工控</b>板在遠程監(jiān)控領(lǐng)域的應(yīng)用

    創(chuàng)信息技術(shù)ARM9工控板串口設(shè)備的COM組件應(yīng)用

    創(chuàng)公司的ARM9工控主板產(chǎn)品均預(yù)裝了Windows CE5.0操作系統(tǒng),支持包括EVC、C#、VB、LabView等多種開發(fā)工具。
    的頭像 發(fā)表于 11-05 10:07 ?2085次閱讀

    創(chuàng)信息技術(shù)ARM9工控主板遠程操作自動更新介紹

    庫EM_FTPClient.LIB,客戶利用這個庫可以方便的編寫出適合自己應(yīng)用的FTP客戶端應(yīng)用程序,在《ARM9工控主板支持斷點續(xù)傳的FTP文件
    的頭像 發(fā)表于 11-13 09:26 ?1697次閱讀

    創(chuàng)信息技術(shù)ARM9工控板遠程抓拍圖像應(yīng)用介紹

    創(chuàng)ARM9工控主板功能齊全、體積小巧、性能穩(wěn)定、超低價格的嵌入式主板產(chǎn)品。
    的頭像 發(fā)表于 11-13 09:41 ?2448次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>ARM9</b><b class='flag-5'>工控</b>板遠程抓拍圖像應(yīng)用<b class='flag-5'>介紹</b>

    創(chuàng)信息技術(shù)工控主板EM9360的GPIO介紹

    創(chuàng)公司的ARM9工控主板產(chǎn)品 EM9360是一款預(yù)裝WinCE操作系統(tǒng),以多種通訊接口、支持各種擴展為其
    的頭像 發(fā)表于 11-14 09:34 ?2757次閱讀

    創(chuàng)信息技術(shù)工控主板的復(fù)位管理介紹

     創(chuàng)公司的工控主板是基于ARM9 CPU、預(yù)裝正版WinCE的嵌入式主板產(chǎn)品。作為嵌入式應(yīng)用,
    的頭像 發(fā)表于 11-14 10:03 ?1941次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>的復(fù)位管理<b class='flag-5'>介紹</b>

    創(chuàng)信息技術(shù)工控主板內(nèi)核更新與版本管理介紹

    創(chuàng)公司的ARM9工控主板系列產(chǎn)品均預(yù)裝了正版的Window CE操作系統(tǒng),支持客戶采用強大的微軟開發(fā)工具直接開發(fā)應(yīng)用程序。
    的頭像 發(fā)表于 11-15 09:24 ?1562次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>內(nèi)核更新與版本管理<b class='flag-5'>介紹</b>

    創(chuàng)信息技術(shù)EM9000工控主板的版本信息管理概述

    EM9000是創(chuàng)公司極具特色的一款ARM9工控主板。經(jīng)過長時間的完善,現(xiàn)系統(tǒng)已完全穩(wěn)定。
    的頭像 發(fā)表于 11-17 11:23 ?2010次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b>EM9000<b class='flag-5'>工控</b><b class='flag-5'>主板</b>的版本<b class='flag-5'>信息</b>管理概述

    創(chuàng)信息技術(shù)ARM9工控主板擴展矩陣鍵盤的方法

    鍵盤輸入,僅需要一些數(shù)字鍵或功能鍵(比如方向鍵),此時可通過外擴矩陣鍵盤來實現(xiàn)。 1、矩陣鍵盤擴展硬件電路 創(chuàng)ARM9工控主板可通過GPI
    的頭像 發(fā)表于 01-14 11:05 ?1953次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>ARM9</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>擴展矩陣鍵盤的方法

    創(chuàng)信息技術(shù)ARM9工控主板的SMS短信息應(yīng)用介紹

    的應(yīng)用越來越廣泛,其中主要以GPRS數(shù)據(jù)通訊及SMS短信息方式為主。GPRS數(shù)據(jù)通訊是以TCP/IP方式進行通訊,GPRS模塊發(fā)送SMS短信,是通過串口發(fā)送AT指令來實現(xiàn)。 創(chuàng)公司基于ARM
    的頭像 發(fā)表于 01-14 11:45 ?1624次閱讀