基于Windows CE 5.0的演示系統設計
要實(shí)現遠程控制,需要在遠程PC上安裝服務(wù)器端程序,在嵌入式系統上安裝客戶(hù)端程序。對于WinCE平臺,UltraVNC并沒(méi)有官方發(fā)布的兼容客戶(hù)端,所以需要將UltraVNC官方客戶(hù)端程序移植到WinCE平臺的嵌入式設備上。
2.2.2 RFB協(xié)議
RFB(Remote FrameBuffer)是遠程圖形用戶(hù)的簡(jiǎn)單協(xié)議,工作在幀緩存級別上,所以它可以兼容于目前的主流操作系統,包括Windows、Linux和Mac OS。
RFB是真正意義上的“瘦客機”協(xié)議。RFB協(xié)議設計的重點(diǎn)在于減少對客戶(hù)端的硬件需求。這樣客戶(hù)端就可以運行在不同的硬件上,客戶(hù)機的任務(wù)實(shí)現上就會(huì )盡量簡(jiǎn)單。
RFB協(xié)議對于客戶(hù)端是無(wú)狀態(tài)的。也就是說(shuō),如果客戶(hù)端從服務(wù)器端斷開(kāi),那么當它重新連接相同的服務(wù)器,客戶(hù)端的狀態(tài)會(huì )被保存。甚至,1個(gè)不同的客戶(hù)端可以用來(lái)連接相同的RFB服務(wù)器,而在新的客戶(hù)端已經(jīng)能夠獲得與前一個(gè)客戶(hù)端相同的用戶(hù)狀態(tài)。因此,用戶(hù)的應用接口變得非常便捷。只要合適的網(wǎng)絡(luò )連接存在,那么用戶(hù)就可以使用自己的應用程序,并且這些應用會(huì )一直保存,即使在不同的接入點(diǎn)也不會(huì )變化。這樣無(wú)論在哪,系統都會(huì )給用戶(hù)提供一個(gè)熟悉、獨特的計算環(huán)境。
2.2.3 程序結構與實(shí)現流程
程序定義的常用數據結構:
①“class Conn”。連接實(shí)現的核心類(lèi),主要負責與UltraVNC Server端的連接,內容的顯示,以及Server端回傳信息的處理。
②“class ConnOpts”。ConnOps類(lèi)中定義了連接UltraVNC Server端所需要的連接參數,如連接模式、IP地址、端口、連接密碼等。
③“class NetworkConn”。NetworkConn封裝了WinCE中網(wǎng)絡(luò )連接相關(guān)的函數,便于程序調用
④“namespace Vnc.RfbProto”。Vnc.RfbProto命名空間封裝了RFB協(xié)議的基本數據結構和函數,作為遠程控制模塊的底層軟件調用。
⑤“class VncAuth”。系統安全組件,用于加密傳輸用戶(hù)連接密碼。
程序功能實(shí)現基本流程:
①通過(guò)獲取到的輸入連接參數,建立與遠程Server端的網(wǎng)絡(luò )連接。

②確認遠程連接協(xié)議版本,驗證用戶(hù)身份,初始化本地、遠程端。

③開(kāi)始連接,顯示遠程畫(huà)面。

④持續傳輸操作指令,返回更新的結果畫(huà)面。

2.3 本地資源管理模塊
為了便于管理嵌入式系統的本地資源,需要為應用程序添加本地資源管理功能。程序能夠在本地通過(guò)USB接口、讀卡器等外部接口訪(fǎng)問(wèn)所連接的資源,從而實(shí)現本地文檔、圖片等資源的簡(jiǎn)單演示功能。
本地資源管理功能主要通過(guò).net compact framework實(shí)現。net compact framework類(lèi)庫包含了訪(fǎng)問(wèn)和管理本地文件的System.IO.File類(lèi),調用相關(guān)方法可以實(shí)現文件的打開(kāi)、剪切、復制、粘貼等功能。系統目前可以直接打開(kāi)的文件有Word文檔(*.doc)、圖片文件(*.jpg,*.gif)。
部分功能代碼:

2.4 功能整合
要應用到實(shí)際產(chǎn)品中,還需要將上述2部分程序整合到統一的界面中。同時(shí),為了提供友好的用戶(hù)界面,原有WinCE系統的菜單、任務(wù)欄等界面元素需要在程序中隱藏,應用程序提供一個(gè)全屏的顯示界面。
隱藏任務(wù)欄和全屏顯示代碼:

評論