- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
WinCE的嵌入式系统注册表的研究
BOOT HIVE存储只用于系统启动时的系统设置。BOOT HIVE从 ROM中读出并用于启动驱动程序和相关的文件系统。这个文件系统用于启动系统 HIVE文件。当系统HIVE启动后, BOOT HIVE将被终止。当系统 HIVE有效时,启动过程中被修改的注册表数据将被存放于系统 HIVE中。但是 BOOT HIVE在 ROM中的数据还保持不变。 3 HIVE注册表的实现HIVE注册表是通过修改系统的平台文件来实现的,在工程目录下的 PLATFORM.REG文件中包含了系统的启动信息,HIVE注册表的启动方式不同于普通注册表的启动方式,它需要在系统加载设备管理器前加载系统存储媒介的驱动程序,只有这样才能在加载设备管理器当中提取设备在注册表中的保存信息,达到 HIVE存储的目的。下面介绍如何让系统支持 HIVE 表2 标准 HIVE及其支持的文件
注册表存储:
1 )修改设备管理器的启动信息值 "Start DevMgr"= dword:1此册项代表使用 HIVE注册表存储系统信息
2 )把系统的存储媒介驱动程序加在 "HIVE BOOT SECTION"与"END HIVE BOOT SECTION" 的注释之间,该注释被编译器选择提取之后,在系统上电后加载在设备管理器之前
3 )在系统的存储媒介驱动程序上提供一个 FLAG项,该项的目的是对目标数据进行逻辑运算。
"flags"= dword:1
通过以上参数的修改,系统即可支持 HIVE注册表存储,该存储方式有效存储系统保存
在 HIVE注册表中的信息,比如触摸屏触电校验信息,系统 IP地址等。经大量试验证明,该方法有效可行。 4 系统注册表修改分析
4.1 触摸屏驱动程序注册表设置 下面是本多媒体系统触摸屏驱动程序的注册表信息设置,我们在校准的时候需要在注册表中存储一些校准坐标信息: [HKEY_LOCAL_MACHINEControlPanel] "InputConfig"= dword:3 ;3 =>键盘和触摸屏
[HKEY_LOCAL_MACHINEHARDWAREDEVICEMAPTOUCH] "DriverName"="touch:dll" "MaxCalError"=dword:10"CalibrationData"="500,512 762,268 758,760 244,758 241,266 "//校准信息 Landscape "CalibrationData"="515,503 763,748 258,749 269,255 764,255 "
图 1 HIVE注册表需要修改的文件
来源:21IC电子网