中易网

怎么能在windows ce系统下 创建一个 快速在注册表内添加开机启动

答案:2  悬赏:10  
解决时间 2021-02-22 18:07
怎么能在windows ce系统下 创建一个 快速在注册表内添加开机启动 比如说我有个文件在c:/1.exe 我想用一个直接点一下就能把这个文件添加到注册表 开机启动里
最佳答案
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"ctfmon.exe"="C:\\1.exe"
全部回答
与桌面windows一样,windows ce也使用注册表(registry)来保存应用程序、驱动程序和用户的设定以及其他一些配置信息。windows ce注册表也采用树形结构来管理配置信息,由于windows ce注册表的结构和功能与桌面windows几乎一样,在这里就不详细介绍了,读者可以参考其它关于注册表的资料。 windows ce支持四个根键,描述如下: 键名 描述 hkey_local_machine 硬件和驱动配置数据 hkey_current_user 用户配置数据 hkey_classes_root ole和文件类型匹配配置数据 hkey_users 适用于所有用户的数据 由于嵌入式系统的特点,一些嵌入式设备是没有外存的。因此windows ce的注册表提供了两种实现方式:基于ram的注册表(ram-based registry)和基于hive的注册表(hive-based registry)。我们可以选择在windows ce中使用任何一种注册表,注册表类型对于用户和应用程序来说是透明的。  基于ram的注册表 正如其名,基于ram的注册表把整个注册表作为一个对象存储堆存放在系统的内存中。这意味着如果对系统进行冷启动或者系统断电,对注册表的所有改动都会丢失。 如果使用基于ram的注册表,对注册表的读写访问操作会变得非常高效。因此基于ram的注册表比较适用于没有外部存储,而且有电池保存内存数据(battery-backed ram)的设备。如果有外存且经常冷启动的设备采用基于ram的注册表,则需要在系统断电的时候对注册表进行保存,等系统再次启动时对保存的注册表进行还原。 windows ce提供了两种方法用来断电保存基于ram的注册表: 1. windows ce提供了两个系统api用来保存和还原整个注册表,它们的原形如下: bool regcopyfile( lpcwstr lpszfile // 保存注册表信息的文件的名字 ); bool regrestorefile( lpcwstr lpszfile // 保存注册表信息的文件的名字 ); 如果要保存和恢复注册表,我们只需要在系统断电的时候调用regcopyfile函数将整个注册表保存为外存上的一个文件。当系统重新启动时,我们再调用regrestorefile函数将文件全部读出ram中,然后再热启动系统,我们保存得注册表就可以生效了。值得注意的是这次热启动是必须的,因为只有在系统启动的时候才会去检测regrestorefile放在ram里的注册表信息。这种方法的优点是完全可以使用应用程序来实现基于ram的注册表的保存,而且这种方法相对简单。但是此方法的缺点是需要两次启动。因此效率相对比较低。 2. 第二种方法需要oem的参与,oem可以在bsp的oal层中实现writeregistrytooem和readregistryfromoem两个函数,它们的声明为: dword readregistryfromoem( dword dwflags, // 参数, reg_read_bytes_start表示读新的注册表 lpbyte lpdata, // 指向注册表数据的缓冲区,由os分配 dword cbdata // 缓冲区的大小 ); bool writeregistrytooem( dword dwflags, // 参数,reg_write_bytes_start表示写新的注册表 lpbyte lpdata, // 指向注册表数据的缓冲区,由os分配 dword cbdata // 缓冲区的大小,0表示到达注册表尾部 ); windows ce会在系统启动和关闭的时候调用这两个函数来保存和恢复注册表。此种方法虽然可以避免两次启动,但是困难的地方是readregistryfromoem函数的实现比较困难,因为在系统启动的时候,块设备驱动和文件系统的驱动都还没有加载,因此不能使用createfile,readfile这样的文件系统api来实现readregistryfromoem函数,只能使用一些更底层的操作来实现。  基于hive的注册表 自从windows ce 4.0之后,windows ce提供了基于hive的注册表。基于hive的注册表把注册表数据存放在文件系统的文件上,这种文件被称作蜂箱hive。这就意味着不再需要在系统断电和启动时进行保存恢复注册表操作。 hive是注册表中的一组键,子键和值。hive是文件系统上表现为单个文件。windows ce中有三种hive。 类型 文件 描述 boot hive rom中的boot.hv hkey_local_machine, hkey_classes_root, hkey_users中的所有数据。只在启动时使用。 system hive 由oem决定 (通常是system.hv) hkey_local_machine, hkey_classes_root, hkey_users中的所有数据。包含设备范围内不随着用户改变而改变的数据。 user hive user.hv hkey_current_user下的所有数据。 包含用户特有的设置,每个用户都有一个单独的user.hv。 基于hive的注册表适用于对于有永久存储并且需要经常冷启动的设备。我们也可以看到,基于hive的注册表把系统数据和用户数据分开存放,这就意味着基于hive的注册表还提供多用户支持。对于每一个用户,可以提供不同的user.hv,当用户登录时加载相应的user.hv,从而达到多用户目的。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
铅花落,青史缄默 这句话什么意思
台州和平国际饭店(北门)怎么去啊,有知道地址
求助 在德国怎么买汽车配件
已知函数f(x)=x的三次方+ax的平方-2x-3
悦途户外旅行地址有知道的么?有点事想过去
5000左右游戏笔记本推荐
如家酒店杭州沈半路店停车场地址有知道的么?
我41码可以穿38码或均码(女)袜子吗?
英国aa网眼胶可以抹脖子吗
酶原颗粒的运输、加工和分泌是以什么形式进行
求解梦,梦到自己牵着羊在河边吃草,羊突然掉
为什么我家电脑一玩LOL,刚开始游戏的时候,就
威俊精工砖成都在哪卖
找一个关于利特的采访视频
空岛上路飞没有霸气是怎么打败艾涅儿的?
推荐资讯
柳州市柳江县住房和城乡建设局地址有知道的么
求!!!火锅店端午节和父亲节活动方案。
朝华惜时杯中酒这首歌名是什么
下列说法错误的是(  )A.所谓低碳经济,
ps cs6,我想安装eye candy4000滤镜,可是放到
中国移动好易通电讯特约代理点我想知道这个在
齐家治国平天下到底是谁说的
移动一根火柴棒,使算式成立。
博白县径口镇政务服务中心我想知道这个在什么
盗梦空间为什么看不了了!
武媚娘传奇热播 范冰冰饰演的武如意惨遭竹书
裕和村这个地址在什么地方,我要处理点事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?