EVC开发实例二:保存信息(二)

http://tech.ddvip.com   2007年05月16日    社区交流

本文详细介绍EVC开发实例二:保存信息(二)

  保存到注册表中

  这一章主要讲解Windows CE.NET下注册表相关技术。

  1、 对象存储(object store)

  对象存储是Windows CE默认的数据存储机制。任何新创建的内核中都默认包含对象存储器。对象存储的实质是在RAM中创建一个文件系统,将文件保存在RAM中,这些文件来源于ROM。当设备启动时,引导程序将ROM中的内核文件解压并存放在RAM中。"windows"目录就是基于对象存储的。对象存储的特点是文件可以压缩、支持事务机制(和数据库中的事务机制相似)、数据I/O相对较快。

  A、对象存储中的对象类型包括文件、目录、数据库、记录、数据库卷。CE为每个对象分配一个对象ID(CEOID)。访问或者操作任何对象的前提是得到该对象ID。

  B、CE能够自动压缩所有对象存储中的文件(CE提供了一个选项供OEM设置是否能够自动压缩文件)。所以文件没有压缩或不压缩的标志,但是有一个标志,标明此文件存在于ROM还是RAM中。一个文件最大长度可达到4 GB。

  C、CE提供了三种文件系统:基于ROM的文件系统、基于RAM的文件系统、FAT文件系统。

  2、 注册表(registry)

  CE下注册表和其它windows操作系统中注册表概念和结构基本相同。

  A、CE下注册表限制:键名最大长度255个字符; 数据最大 4KB;子键深度最大值 16层。

  B、根键有HKEY_CLASSES_ROOT、HKEY_CURRENT_USER、HKEY_LOCAL_MACHINE、HKEY_USERS。

  C、操作注册表函数:

  i. 打开RegOpenKeyEx 和创建RegCreateKeyEx 

  ii. 读RegQueryValueEx写RegSetValueEx 

  iii. 枚举入口或子键RegEnumValue、RegEnumKeyEx 

  iv. 删除入口或子键RegDeleteValue、RegDeleteKey  

  v. 关闭RegCloseKey

来源:vckbase    作者:付林林    责编:豆豆技术应用

正在加载评论...