Hive Registry 问题请教

xyz666 2006-11-30 03:01:20
各位好啊,向大家请教两个问题:
1.用资源DLL实现的多国语言,但设定后要使系统重起能够生效,是不是要修改注册表子键nls下DefaultLCID的键值?
2.在自己定制的OS,没有任何的开发板,能不能实现Hive Based Registry? 如果行的话,在Platform.reg 和 Commom.reg中如何修改?要把改动需要保存的注册表保存到哪?
...全文
158 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
singlerace 2006-12-01
  • 打赏
  • 举报
回复
1,可以,不可以的话要HWND_BROADCAST干嘛
2,模拟器能给你模拟出硬盘来吗?。不过CE的模拟器是可以保存状态的,如果你只想保留设置,根本用不着hive based registry。
singlerace 2006-12-01
  • 打赏
  • 举报
回复
模拟器的关机菜单有一个可以保存住当前状态的,其实就是把RAM里的东西都存到硬盘上。不过这是模拟器的功能,PDA这么做当然不行。真正的设备是可以通过保存hive based registry来作-这个在CE的模拟器里是做不了的。不过你可以用VirtualPC或者VMWARE。
xyz666 2006-12-01
  • 打赏
  • 举报
回复
to:singlerace(独行者)再次感谢
1.我已经实现:根据设置不同的语言对注册表MUI子键SysLang的值的修改,别的应用程序读取SysLang的值来加载相应的语言DLL,请问这样在真机上能否实现?我们是在做PDA应用开发,但到现在还没拿到硬件设备,只能都在模拟器上调试,郁闷。
2.要实现的是关闭模拟器后能保存当前的设置,下次重开模拟器能得到之前的设置,请问你说的方法具体是什么?我有点怀疑这样做不到。
3.如果在真正的设备上我想是通过hive based registry来实现的吧?

singlerace(独行者)麻烦你在指点一下,到时会按时结帖的!
xyz666 2006-11-30
  • 打赏
  • 举报
回复
to:singlerace(独行者)非常感谢
我是这样的:
1.我的设置多国语言是一个单独的应用程序,设置完成要使其他的应用程序也能够生效,用你这方法行吗?我想修改注册表MUI里一个子键SysLang的值,只要这个值一改动,其他的应用程序也跟着改
2.我实现的是:PB定制一个OS,生成SDK,装这个SDK的模拟器,是不是做不到hive based registry?因为模拟器不带有永久性存储介质是吧?那我能不能用PC的硬盘?
singlerace 2006-11-30
  • 打赏
  • 举报
回复
1,可以用API,不用重起:
SetSystemDefaultLCID(lcid);
SetUserDefaultLCID(lcid);
PostMessage(HWND_BROADCAST, WM_WININICHANGE, 0, INI_INTL);
2,没有开发板是什么意思?跟HIVE BASED REGISTRY有什么关系?hive based registry的实现要改几个地方,但首先你必须有flash或者硬盘这样的永久性存储介质。

19,500

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧