Windowsレジストリ入門ガイド:基本構造とルートキーの役割を徹底解説
Windowsレジストリとは、システムや各種アプリケーションの設定情報(構成データ)を保存するための、OSが管理するデータベースです。Windowsにプログラムをインストールしたりアンインストールしたりするたびに、レジストリ内の特定のキーの値が書き換えられます。
レジストリエディタは、システム設定やアプリケーション設定が階層的に格納された「巨大な表」と考えるとイメージしやすいでしょう。多くのアプリケーションは何らかの形でWindowsレジストリを利用しており、レジストリAPIを使ってデータの取得・変更・削除を行っています。
レジストリでできることは多岐にわたりますが、この記事ではWindowsレジストリの基本的な構造と動作の仕組みに焦点を絞って解説します。
Windowsレジストリの基本構造
Windowsレジストリは、「キー」と「値」という2つの基本要素で構成されています。レジストリに保存されたデータはツリー形式で整理されており、各ノードが「キー」と呼ばれます。それぞれのキーには複数のサブキーを含めることができ、そのサブキーの中にさらにサブキーを持つことも可能です。
各キーには「値」と呼ばれるデータエントリも格納できます。ただし、これはアプリケーションによって異なり、特定のキーに値を保存する必要がないアプリもあります。キー自体の存在だけでアプリケーションがタスクを実行できるケースがあるためです。一般的には、アプリケーションがキーを開き、それに関連付けられた値を利用するという流れになります。
キー名には英数字を使用でき、大文字と小文字は区別されません。ただし、バックスラッシュ(\)をキー名に含めることはできません。
Windowsレジストリの定義済みルートキー
Windowsレジストリには、以下の6つのルートキーが存在します。
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
- HKEY_CURRENT_CONFIG
- HKEY_DYN_DATA
HKEY_CLASSES_ROOT
このルートキーには、登録済みアプリケーション、ファイルの関連付け、OLEオブジェクトのクラスIDなどの情報が保存されています。シェルやCOMアプリケーションは、ここに格納された情報を利用します。また、DDEやOLEサポートのための情報も保存されており、旧Windowsの登録データベースとの後方互換性を実現しています。
HKEY_CURRENT_USER
このキーには、現在ログインしているユーザー(管理者を含む)固有の設定のみが保存されます。ユーザーごとの設定は、NTUSER.DATおよびUSRCLASS.DATというファイルに個別に保存されており、「マイコンピューター → OSドライブ → Documents and Settings」から確認できます。
ユーザー固有の設定や環境設定には、環境変数、スタートアップ項目、プログラムグループ、アクティブなネットワーク接続、その他のアプリケーション設定などが含まれます。「ユーザーの切り替え」を行ったり、ログオフ後に再度ログインしたりすると、このキーが呼び出され、ユーザー定義のシステム変数や環境モジュールの読み込みが開始されます。
具体例を挙げてみましょう。HarryとTomが同じパソコンを共有し、両者が同じワープロソフトで文章を執筆しているとします。Harryは既定のフォントに「Arial」を選び、Tomは「Verdana」を設定しました。ワープロソフトはこの情報をHKEY_CURRENT_USER\ソフトウェア名\ の下に保存しており、システムが特定のユーザーを検出すると、HKEY_CURRENT_USER配下に定義されたアプリケーションのサブキーから環境を読み込みます。
HKEY_LOCAL_MACHINE
HKEY_LOCAL_MACHINE配下のサブキーは、コンピューターの物理的な状態を定義します。これには、利用可能なシステムメモリ、バスタイプ、搭載ハードウェアの詳細などが含まれます。サブキーには、OSがこれまでに使用したことのあるハードウェア構成データの完全なリストが格納されています。さらに、ネットワーク設定、プラグアンドプレイ情報、ネットワークセキュリティ、サーバー名といった重要なシステム情報もこのキーの下に保存されます。
HKEY_LOCAL_MACHINEには、SECURITY、SYSTEM、SOFTWARE、SAMという4つの主要なサブキーがあります。これらのファイルは「マイコンピューター → OSドライブ → Windows → System32 → Config」から確認できます。5つ目のサブキー「HARDWARE」は動的に作成されるもので、データはディスク上ではなくメモリ上に保持されます。SYSTEMサブキーにはシステムドライバーとサービスに関するすべての情報が、SOFTWAREサブキーにはWindowsの設定やその他のソフトウェア情報が格納されます。
HKEY_USERS
このキーは、OS上に存在する各アクティブユーザープロファイルに対応するHKEY_CURRENT_USERキーのサブキーで構成されます。このキー配下のレジストリエントリは、ローカルマシン上の新規ユーザーの構成と、ログイン中ユーザーの構成を定義しています。
HKEY_CURRENT_CONFIG
このルートキーには、実行時に利用可能な情報や、OSのハードウェアプロファイルに関する情報が含まれています。このキーの情報はディスクには保存されず、システム起動時に動的に生成されます。このキー(およびそのサブキー)に保存された値は、現在のハードウェア構成とOSの標準構成との差分を記述しています。
このキーは、HKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardware Profiles\Current の別名(エイリアス)と考えることもできます。
HKEY_DYN_DATA
このキーは、古いバージョンのWindows(Windows 95〜Windows Me、一部のNT系)で使用されていたものです。各種ハードウェアデバイスやネットワークパフォーマンスの統計情報が含まれ、システム起動時に動的に収集されRAM上に保存されます(ディスクには保存されません)。
Windowsレジストリの編集方法
Windowsレジストリにアクセスするには、Windowsのスタートメニューの検索ボックスに「regedit」と入力します。Windows XP以前のバージョンでは、「ファイル名を指定して実行」から regedit と入力してEnterキーを押すと、レジストリエディタが起動します。

既存のレジストリエントリの値を変更する際は、細心の注意が必要です。誤った変更を加えると、システムが不安定になる可能性があります。編集前には必ずレジストリのバックアップを作成することをおすすめします。
関連記事
- Windows 7でレジストリをバックアップする方法
- Windowsレジストリのクリーンアップ方法
- Windowsレジストリをデフラグすべき理由
-
Windows 10の新しいクリップボード機能を使いこなす方法|履歴・同期設定ガイド
Windows 10の最新アップデートでは、ユーザー体験を向上させる魅力的な新機能が多数追加されました。今回はその中から「クリップボード」の新機能をご紹介します。この機能を活用すれば、よく使う項目を素早く記録したり、重要な用件を効率的に管理したりと、日々の作業がぐっと快適になります。さらに、クリップボードにピン留めした項目の履歴をすべて確認できるだけでなく、複数のデバイス間でクリップボードデータを同期することも可能です。それでは、Windows 10のクリップボード機能を使って、全く新しい体験を楽しんでみましょう!Windows 10でクリップボードを有効化する方法現時点では、この機能はIns
-
Windowsユーザーデータのバックアップ入門 - 手軽にできる暗号化バックアップ作成ガイド
数ヶ月前、Linuxのホームディレクトリをバックアップする方法についての記事を公開しました。データやアプリケーション設定、さらには暗号化まで網羅した内容で、どのLinuxシステムにも搭載されているシンプルなツールだけで実現できるため、いつでもどこでも活用できるものでした。その後、読者の皆さんから「Windows版のチュートリアルも欲しい」というメールやご提案を多数いただきました。当初はコマンドライン中心のガイドとして、Windowsシェルスクリプトを使った内容を考えていましたが、もっとシンプルな形にすることにしました。大多数の方はGUIでWindowsを操作しているため、今回は画面ベースで分か