WinCE的嵌入式系統(tǒng)注冊表的研究
BOOT HIVE存儲只用于系統(tǒng)啟動時(shí)的系統(tǒng)設(shè)置。BOOT HIVE從 ROM中讀出并用于啟動驅(qū)動程序和相關(guān)的文件系統(tǒng)。這個(gè)文件系統(tǒng)用于啟動系統(tǒng) HIVE文件。當(dāng)系統(tǒng)HIVE啟動后, BOOT HIVE將被終止。當(dāng)系統(tǒng) HIVE有效時(shí),啟動過程中被修改的注冊表數(shù)據(jù)將被存放于系統(tǒng) HIVE中。但是 BOOT HIVE在 ROM中的數(shù)據(jù)還保持不變。 3 HIVE注冊表的實(shí)現(xiàn)HIVE注冊表是通過修改系統(tǒng)的平臺文件來實(shí)現(xiàn)的,在工程目錄下的 PLATFORM.REG文件中包含了系統(tǒng)的啟動信息,HIVE注冊表的啟動方式不同于普通注冊表的啟動方式,它需要在系統(tǒng)加載設(shè)備管理器前加載系統(tǒng)存儲媒介的驅(qū)動程序,只有這樣才能在加載設(shè)備管理器當(dāng)中提取設(shè)備在注冊表中的保存信息,達(dá)到 HIVE存儲的目的。下面介紹如何讓系統(tǒng)支持 HIVE 表2 標(biāo)準(zhǔn) HIVE及其支持的文件
注冊表存儲:
1 )修改設(shè)備管理器的啟動信息值 “Start DevMgr”= dword:1此冊項(xiàng)代表使用 HIVE注冊表存儲系統(tǒng)信息
2 )把系統(tǒng)的存儲媒介驅(qū)動程序加在 “HIVE BOOT SECTION”與“END HIVE BOOT SECTION” 的注釋之間,該注釋被編譯器選擇提取之后,在系統(tǒng)上電后加載在設(shè)備管理器之前
3 )在系統(tǒng)的存儲媒介驅(qū)動程序上提供一個(gè) FLAG項(xiàng),該項(xiàng)的目的是對目標(biāo)數(shù)據(jù)進(jìn)行邏輯運(yùn)算。
“flags”= dword:1
通過以上參數(shù)的修改,系統(tǒng)即可支持 HIVE注冊表存儲,該存儲方式有效存儲系統(tǒng)保存
在 HIVE注冊表中的信息,比如觸摸屏觸電校驗(yàn)信息,系統(tǒng) IP地址等。經(jīng)大量試驗(yàn)證明,該方法有效可行。 4 系統(tǒng)注冊表修改分析
4.1 觸摸屏驅(qū)動程序注冊表設(shè)置 下面是本多媒體系統(tǒng)觸摸屏驅(qū)動程序的注冊表信息設(shè)置,我們在校準(zhǔn)的時(shí)候需要在注冊表中存儲一些校準(zhǔn)坐標(biāo)信息: [HKEY_LOCAL_MACHINEControlPanel] InputConfig= dword:3 ;3 =>鍵盤和觸摸屏
[HKEY_LOCAL_MACHINEHARDWAREDEVICEMAPTOUCH] DriverName=touch:dll MaxCalError=dword:10CalibrationData=500,512 762,268 758,760 244,758 241,266 //校準(zhǔn)信息 Landscape CalibrationData=515,503 763,748 258,749 269,255 764,255
評論