以文本方式查看主題 - 曙海教育集團論壇 (http://www.xinguifushi.cn/bbs/index.asp) -- Wince技術討論區 (http://www.xinguifushi.cn/bbs/list.asp?boardid=9) ---- ARM9嵌入式工控主板產品系列 (http://www.xinguifushi.cn/bbs/dispbbs.asp?boardid=9&id=1375) |
-- 作者:wangxinxin -- 發布時間:2010-11-16 11:18:27 -- ARM9嵌入式工控主板產品系列 英創公司推出的ARM9嵌入式工控主板產品系列,均預裝了正版的WinCE5.0操作系統。微軟的WINCE實時多任務操作系統是嵌入式領域的主流操作系統之一,它包括了以TCP/IP為特色的完整網絡通訊協議,并提供了基于TCP/IP應用協議的服務器程序,如FTP Server、Web Server等等很實用的軟件程序。英創提供的工控主板以其專業性,為客戶提供良好而專業的硬件和軟件技術支持,很好地滿足了現代智能電子設備的需求,而成為許多工業應用終端客戶選擇的合作對象。在進行應用終端產品的開發過程中,總免不了會碰到需要對產品的應用軟件進行更新升級的情況。本文主要針對這一應用介紹如何利用FTP Server在英創的ARM9工控主板實現應用程序的遠程自動更新。 FTP Server是WinCE內核提供的應用程序,當WinCE操作系統一啟動,該程序就會通過“Core Server Support”- “Services.exe”自動加載運行。遠端的PC機只需要運行FTP客戶端程序就可以直接連到目標機(即英創的ARM9工控主板),目前比較常用的有:CuteFTP FileZilla等。 對于應用程序的更新,一般應用程序還在運行,所以無法用直接COPY來更新應用程序。在本文中我們將介紹一種實現遠程自動更新的方案。 一、程序說明 該方案中一個核心的程序為update.exe,該程序是在客戶應用程序啟動之前首先啟動的。為了避免和正在運行的應用程序相沖突,需要更新的程序文件需要上傳至一個指定的目錄,我們這里選擇的是目標板的“\\\\NandFlash”文件夾下,建立一個子目錄\\\\FTPUpdate。該程序首先第一步是查詢\\\\FTPUpdate目錄下的是否有需要更新的文件,判斷的依據是檢查在\\\\FTPUpdate目錄下是否有標志文件“update.***”,如果檢查到有該文件,則目標機馬上進行程序文件的自動COPY更新,即將\\\\FTPUpdate目錄下的所有文件COPY到客戶應用所在的目錄下,如果COPY文件成功,程序將自動刪除標志文件。第二步自動啟動客戶的應用程序,應用程序的名稱和參數同樣是從用戶編輯的userinfo.txt文件中獲取。第三步啟動一個查詢的線程,每隔5秒自動查詢在\\\\FTPUpdate目錄下是否有標志文件“update.***”,如果檢測到有該文件,目標機將自動重啟動,然后再重復以上過程,從而達到遠程自動更新的目的。 二、應用說明 該核心程序update.exe已經包含在內核中,用戶可以通過編輯userinfo.txt來選擇是否啟動程序自動更新方案。為了保證以前的userinfo.txt兼容,我們只是在 [USER_EXE] 中增加一個選項來選擇,Update=”ON”表明啟動程序自動更新方案。如: [LOCAL_MACHINE] //目標機信息 在使用該方案進行程序更新時,可以按照以下步驟進行: 1、首先需要在目標板的“\\\\NandFlash”文件夾下,建立一個子目錄“\\\\FTPUpdate”,該目錄用來存放需要更新的應用程序相關文件。
|