レジストリでよく迷子になるあなたに…キー違いのサブキー間を一瞬で移動する方法

   

19d6d61f2e28d0fcfcb0e1963da18c45_s

Windowsのレジストリは非常に深い階層構造で各種の情報を格納しています。例えば、HKEY_CURRENT_USER\SOFTWARE\Microsoft\WindowsはルートであるHKEY_CURRENT_USERから四つ目の階層です。

さて、何かしらの設定値を変えるためにこの階層まで降りてきたところで、実はHKEY_CURRENT_USERではなく、HKEY_LOCAL_MACHINE以下のHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windowsが実は目的地だったと気づいたとしましょう。ウンザリしますね。またルートであるHKEY_LOCAL_MACHINEからペチペチ階層を辿っていくのですから…。

実はWindows10のレジストリエディタでは、これを一瞬で移動出来る機能が追加されています。

レジストリのキー違いのサブキー間を一瞬で移動するには

  1. 今開いているHKEY_CURRENT_USER\SOFTWARE\Microsoft\WindowsのサブキーであるWindowsを選択して右クリックします。
    現在のサブキーを選択

    現在のサブキーを選択

  2. 表示されたメニューで「HKEY_LOCAL_MACHINEに移動」を選択します。一瞬でピュッとHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows移動します。
    HKEY_LOCAL_MACHINEに移動
    HKEY_LOCAL_MACHINEに移動

    HKEY_LOCAL_MACHINEに移動

  3. もし、逆の場合も同じで「HKEY_CURRENT_USERに移動」を選択すればHKEY_CURRENT_USER\SOFTWARE\Microsoft\Windowsに移動出来ます。

周辺の話

そもそも別のキーなのに同じサブキーがあるの?

先程の二つのキーはユーザに関する設定は同じキーを持っていることが多いです。しかし、扱っている範囲が異なります。

  • HKEY_CURRENT_USER:「現在ログインしているユーザー」で適用される設定
  • HKEY_LOCAL_MACHINE:システムに関係する設定、および「すべてのユーザー」で適用される設定

複数のユーザアカウントが存在している場合、前者だと現在使用しているユーザアカウントに対してのみ有効ですが、後者だと全アカウントに対し有効になります。また、システムに関する設定はHKEY_LOCAL_MACHINE側にしかありません。

他のキーとの間での移動は出来ないの?

出来ません。見てみれば分かりますが、階層構造が似ても似つかないのでこういった混同を起こすのはこの2キー間だけと思います。

終わりに

まあ使い慣れた環境で本格的に弄り込む場合は組み込みのRegeditではなく、機能が豊富なオンラインツールを使うなりPowershell経由で触ったりするんじゃないか…と思います。でも、素の環境の設定変更で仕方なくRegeditを使った場合、この手のキー間違いは個人的に「あるある」ネタだったので、こういうちょっとした機能追加は嬉しかったりします。

適宜覚書-Fragmentsは、筆者が興味をもった様々な情報やネタを筆者が忘れても後で思い出せるよう覚書として公開するBlogです。Google Chrome拡張、Facebook、Google、Twitter、Windows、各種Webアプリなどを扱うことが多いです。この覚書が、もし何かお役立ちになれば幸いです。

 - Tips, Windows10