Windows注册表编辑器定位的实现

陪她去流浪 桃子 2015年04月09日 编辑 阅读次数:2241

介绍

这里所说的定位就是指:当一打开Windows的注册表编辑器,就自动定位到某个子键上面。

这通常用于软件定位,也就是说,当某个软件需要向用户展示某个键时,就需要这样做。

实现

Windows注册表编辑器在启动时,都会检查一个名叫 LastKey 的值(位于:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit),并以它的数据来作最初的定位。也就是说,如果我们通过程序设定了它的值,然后再打开注册表,那么,注册表会在一打开时就定位到我们预先设定的值。That's all!

示例

C:\Users\Tao>reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit /v LastKey /t REG_SZ /d HKEY_CLASSES_ROOT\CLSID /f && start regedit
The operation completed successfully.

注意事项

值名 LastKey 的值中的根键不能缩写!

  1. HKCR => HKEY_CLASSES_ROOT
  2. HKCU => HKEY_CURRENT_USER
  3. HKLM => HKEY_LOCAL_MACHINE
  4. ...

不要尝试手动修改并看效果!不行!因为注册表每次在关闭的时候都会修改该值为当前值。

标签:WinAPI · 注册表