999国内精品永久免费视频,色偷偷9999www,亚洲国产成人爱av在线播放,6080亚洲人久久精品,欧美超高清xxxhd

首頁 新聞 工控搜 論壇 廠商論壇 產(chǎn)品 方案 廠商 人才 文摘 下載 展覽
中華工控網(wǎng)首頁
  P L C | 變頻器與傳動 | 傳感器 | 現(xiàn)場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
  D C S | 工業(yè)以太網(wǎng) | 現(xiàn)場總線 | 顯示調節(jié)儀表 | 數(shù)據(jù)采集 | 數(shù)傳測控 | 工業(yè)安全
  電 源 | 嵌入式系統(tǒng) | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
ARM9工控主板支持斷點續(xù)傳的FTP文件傳送
英創(chuàng)信息技術有限公司
收藏本文     查看收藏

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

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

      斷點續(xù)傳是指在文件的傳送過程中,因為網(wǎng)絡或其它原因至使傳送過程中斷,當再次傳送這個文件時,將從已傳送的部份開始,繼續(xù)未完成部份傳送,不用從頭對整個文件進行傳送,這樣可以節(jié)省時間,節(jié)約網(wǎng)絡流量,提高文件傳送速度。對于在GPRS網(wǎ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服務器
      輸入?yún)?shù) lpszHostIP:服務器IP
      lpszUserName:用戶名
      lpszPassword:用戶密碼(當用戶名用與用戶密碼為空時,將匿名登錄)
      nTimeOut:超時設置 1000(mS)<=nTimeOut<=60000(mS)
      返回值 = TRUE:登錄FTP服務器成功
      FALSE:登錄FTP服務器失敗

      (2)bool ChangeDir( LPCTSTR lpszRemoteDir=_T('\\') );
      功能描述:設置遠端FTP服務器當前目錄
      輸入?yún)?shù) lpszRemoteDir:服務器目錄
      返回值 = TRUE:目錄更改成功
      FALSE:目錄更改失敗

      (3)bool ListAll(  FILELIST* fileList  );
       功能描述:獲取FTP服務器當前目錄下的所有文件的列表
       輸入?yún)?shù) fileList:接收文件列表的結構體
      返回值 = TRUE:獲取文件列表成功
      = FALSE:獲致文件列表失敗
      文件列表數(shù)據(jù)結構定義如下:
      typedef struct  
      {
            int  nFileNum;      
 //當前目錄文件個數(shù)
            TCHAR FileList[MAXFILENUM][MAX_PATH]; 
//文件名列表 
                                                                          //(注:當nFileNum = 0 時,此數(shù)組中的內容無效)

      }FILELIST;

      (4)bool GetFile( LPCTSTR lpszLocalFile, LPCTSTR lpszRemoteFile,
                                   int nMode = 0, bool bResume=FALSE );
      功能描述:從FTP服務器上下載指定文件(如果下載的文件已存在于本地當前目錄下,將覆蓋下載)
       輸入?yún)?shù) lpszLocalFile:存儲為本地文件名
      lpszRemoteFile:下載的指定文件
      nMode:傳輸模式  =0: 二進制模式 =1: 文本模式
      bResume:斷點續(xù)傳標志
      =TRUE:繼點續(xù)傳
      (程序將掛斷FTP連接,重新執(zhí)行Logon(),ChangeDir(),然后下載)
      =FALSE: 正常下載
      返回值 =  TRUE:開始下載  
      FALSE:開始下載失敗

      (5)bool DelFile( LPCTSTR lpszFileName)
      功能描述:刪除遠端FTP服務器當前目錄下指定文件
      輸入?yún)?shù) lpszFileName:指定要刪除的文件
      返回值 =  TRUE:刪除成功  
      FALSE:刪除失敗

      (6)bool Logoff( );
       功能描述:注銷與遠端FTP服務器的連接

      (7)void Abort( );
      功能描述:中斷與遠端FTP服務器的連接

      (8)FTPSTATUS* GetStatus( );
      功能描述:獲取當前文件的下載狀態(tài)
      返回值: 指向當前下載文件狀態(tài)數(shù)據(jù)結構的指針
      文件下載狀態(tài)數(shù)據(jù)結構定義如下:
      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、在調用GetFile()函數(shù)時,如果將bResum設置為TRUE,程序將自動執(zhí)行以下步驟:
      ↓調用Abort( )中斷與FTP服務器的連接
      ↓調用Logon( )登錄到FTP服務器
      ↓調用ChangeDir( )設置FTP服務器當前目錄
      ↓從已完成傳送的部份繼續(xù)下載
      其中Logon()和ChangeDir( )的參數(shù)是最后一次調用Logon()和ChangeDir( )傳入的值。

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

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

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


 

狀 態(tài): 離線

公司簡介
產(chǎn)品目錄

公司名稱: 英創(chuàng)信息技術有限公司
聯(lián) 系 人: 李林
電  話: 028-86180660
傳  真: 028-85141028
地  址: 成都市高新區(qū)高朋大道5號博士創(chuàng)業(yè)園
郵  編: 610041
主  頁:
 
該廠商相關技術文摘:
GPRS集抄單元整機方案
DOS工控主板的TCP/IP應用
低成本LCD的選型與使用
嵌入式數(shù)據(jù)庫SQLCE的開發(fā)與應用
C#使用COM組件接口操作精簡ISA總線
基于精簡ISA總線的CE設備驅動程序
工控主板EM9360的GPIO的各種使用方法
工控主板EM9000數(shù)字IO的增強擴展
英創(chuàng)工控主板同時驅動RS232和RS485的方法
ARM9工控板在遠程監(jiān)控中的應用
主板EM9161實現(xiàn)音頻輸出的方法
更多文摘...
立即發(fā)送詢問信息在線聯(lián)系該技術文摘廠商:
用戶名: 密碼: 免費注冊為中華工控網(wǎng)會員
請留下您的有效聯(lián)系方式,以方便我們及時與您聯(lián)絡

關于我們 | 聯(lián)系我們 | 廣告服務 | 本站動態(tài) | 友情鏈接 | 法律聲明 | 不良信息舉報
工控網(wǎng)客服熱線:0755-86369299
版權所有 中華工控網(wǎng) Copyright©2022 Gkong.com, All Rights Reserved