阅读:1817回复:6
关于注册表的问题
通过注册表编辑器可以看到注册表中所有的键,在这些可以看到的键当中,有一部分并不是真实存在,而仅仅是其它键的一个链接(windows kernel里称之为link),类似于文件的快捷方式。
例如HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet其实就是到 HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSetXXXX的一个链接。 我的问题是有没有什么一般的接口函数,可以用来判断一个键是否是链接,如果是链接,又如何获得它的目标键?? 谢谢!! |
|
|
沙发#
发布于:2005-06-10 09:42
再顶一下
|
|
|
板凳#
发布于:2007-08-21 11:41
我也想知道
|
|
|
地板#
发布于:2007-09-12 12:58
关于你说的这个问题,有点问题要说明白:
在注册表HKLM\system注册表项中包括用于windows启动的三个控件组(额外还可能存在一个备份控件组),在初始状态下,它们分别是ControlSet001、ControlSet002以及CurrentControlSet。这些控件组中包含了操作系统配置的信息,比如服务、驱动、系统控制、枚举信息等等。默认情况下,ControlSet001是系统真实的配置信息,但是为了避免序号混乱,windows启动时会从ControlSet001复制一份副本,作为操作系统当前的配置信息,也就是CurrentControlSet。我们对于计算机配置所作的修改都是直接写入到CurrentControlSet,在重启过程中,windows会用CurrentControlSet的内容覆盖掉ControlSet001,以保证这两个控件组一致。 当操作系统每成功启动一次(指成功登录),它都将CurrentControlSet和ControlSet001中的数据复制到ControlSet002中。这样,ControlSet002就成了“最近一次成功启动的配置信息”(很熟悉吧?在启动windows前按下F8所调出的菜单中有这个选项)。所以我们一般系统注册表中都只是有这三个控件组,并且序号都是current、001和002。 我们能操作的只是CurrentControlSet,这是我的研究,大家可以讨论一下阿。 |
|
地下室#
发布于:2007-09-12 20:00
ControlSet003 ControlSet004 ControlSet00x
是干嘛用的 |
|
5楼#
发布于:2007-09-13 06:19
[ 我们能操作的只是CurrentControlSet,这是我的研究,大家可以讨论一下阿。]
兄台说的可能与实际有些差别。 |
|
6楼#
发布于:2007-09-13 13:47
【兄台说的可能与实际有些差别】-》我们继续研究!
|
|