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