このページの本文へ

前へ 1 2 次へ

Windows Info 第36回

Windowsの設定を保存するレジストリの構造を分析する

2014年12月04日 12時00分更新

文● 塩田紳二

  • この記事をはてなブックマークに追加
  • 本文印刷

Windowsの設定データをAPIからアクセスできるよう
情報がまとめて保存された「レジストリ」

 レジストリ(Registry)とは、Windowsがシステムやアプリケーションの設定データなどを管理する仕組みだ。ファイルに直接保存する設定情報と違い、構造化されたデータをAPI経由でアクセスするため、データの読み書きや解釈に対する処理が不要で、高速なアクセスが可能というメリットがある。

Windowsの設定情報が格納されたレジストリ。レジストリエディタから、中身を見たり、編集することが可能

 初期のWindowsでは、ファイルに設定データなどを保存していたが、システムが複雑化/高性能化するとファイルによる管理が困難になる。そこで導入されたのがWindowsのAPIを介してアクセスする構造化されたデータ構造であるレジストリだ。

 レジストリに含まれている情報の一部は、ファイルに保存されるが、その処理はWindows側でまとめて行なうため、レジストリを利用する側では、ファイルの読み書きやデータの保存のタイミングなどを意識する必要がない。また、あらかじめ定義されたデータ形式で文字列や整数値を扱えるため、API経由で入手したデータを変換するなどの手間も不要になる。

 また、レジストリは、Windowsが持つハードウェアや動作状態に関する情報も同じ形式で提供し、システム情報を入手するための方法としても利用されている。こうした情報は、ファイルには保存されず、Windowsが必要に応じて自動的に作り出して、APIを介して提供している。このような情報を「揮発性」があるという。

 これに対して、ファイルに保存されているレジストリ情報は、システムの電源がオフになっても、値を保持できるため、「不揮発性」であるいう。また、レジストリでは、ファイルに格納されているレジストリ情報を「ハイブ」と呼ぶ。レジストリは、複数のハイブと揮発性の情報から構成されている。

 基本的にはレジストリを扱うには、WindowsのAPIを使うが、その一部は、Windows付属のレジストリエディタ(RegEdit.exe)で編集することができる。ただし、レジストリエディタが扱えるのは、レジストリの一部で、レジストリの中にはレジストリエディタでアクセスできない部分も存在する。

レジストリを構成する要素

 レジストリは、ファイルシステムのフォルダのような「ツリー構造」でデータを管理している。レジストリには、このツリー構造を作るレジストリの要素を「キー」という。

 「キー」は、フォルダのようなもので、その下に複数のキーを含むことができる。あるキーの下にあるキーを「サブキー」と呼び、サブキーを含むキーをサブキーの「親キー」ということがある。また、レジストリには、6つのルートキーがある。ルートキーは、キーのツリー構造の起点となる部分で、最も上にある「親キー」だ。

ルートキー Reg
Edit
略称 Hive/Link 備考
サブキー Hiveファイル
HKEY_CLASSES
_ROOT
HKCR HKLM\SOFTWARE\Classesと
HKEY_USERS\<SID>
\SOFTWARE\Classesを合成したもの
クラス定義と拡張子の関連づけ
HKEY_CURRENT
_USER
HKCU HKEY_USERの下のログオンしているユーザーのサブキーにリンク  
HKEY_LOCAL
_MACHINE
HKLM BCD00000000 \Boot\BCD システム全体、ハードウェアに関する情報
COMPONENTS %SystemRoot%\System32
\Config\COMPONENTS
SYSTEM %SystemRoot%\System32
\Config\SYSTEM
SAM %SystemRoot%\System32
\Config\SAM
SECURITY %SystemRoot%\System32
\Config\SECURITY
SOFTWARE %SystemRoot%\System32
\Config\SOFTWARE
HARDWARE 揮発性
HKEY_CURRENT
_USER
HKCU HKEY_USERの下のログオンしているユーザーのサブキーにリンク  
HKEY_USERS HKU <SID> %SystemRoot%\ServiceProfiles\NetworkService\Ntuser.dat
%SystemRoot%\ServiceProfiles\LocalService\Ntuser.dat
\Users\ユーザー名\Ntuser.dat
AppData\Local\Microsoft\Windows\Usrclass.dat
ユーザーすべての情報
.DEFAULT %SystemRoot%\System32\Config\Default
HKEY_CURRENT
_CONFIG
HKCC HKLM\SYSTEM\CurrentControlSet
\Hardware Profiles\Currentへのリンク
 
HKEY_PERFOR
MANCE_DATA
× HKPD 揮発性 パフォーマンスデータ

 キーには、かならず名前がつく。名前にはASCII文字や日本語(UTF-16LE形式)を含む文字列が利用できる。その最大長は230文字である。ただし、キーの名前に「\」を含むことはできない。キー名には、空白を含むことができるが、このような場合、扱うときにダブルクオートで括るなど、ファイルパスと同様の扱いが必要になる。

 キーには、サブキーのほかに「値」を保存することができる。値は、「名前」、「種類」、「データ」という構造を持つ。つまり、情報を「種類」で指定した形式として「データ」に保存し、これに「名前」を付けるわけだ。

 「種類」は、あらかじめ既定されたもののみが利用できる。システムとして定義されているデータ形式は12種類あるが、そのうち6種類だけをレジストリエディタで扱うことができる。Plug & Play用のデータ形式(Resource関連)もあるが、レジストリエディタで扱うことができるのは文字列または整数およびバイナリのみである。

API上の種類(タイプ) RegEditでの種類 意味
REG_BINARY バイナリ値 特定の形式を持たないバイトデータ
REG_SZ 文字列値 改行を含まない固定長の文字列
REG_EXPAND_SZ 展開可能な文字列値 環境変数で展開される文字列(%~%)
REG_MULTI_SZ 複数行文字列値 改行を含む文字列
REG_DWORD/
REG_DWORD_LITTLE_ENDIAN※1
DWORD(32ビット)値 32bit符号なし整数値(リトルエンディアン)
REG_DWORD_BIG_ENDIAN ー※2 32bit符号なし整数値(ビッグエンディアン)
REG_QWORD/
REG_QWORD_LITTLE_ENDIAN※1
QWORD(64ビット)値 64bit符号なし整数値(リトルエンディアン)
REG_LINK リンク。データを他のキーへのパスとして解釈
REG_NONE タイプなし
REG_RESOURCE_LIST リソースリスト
REG_FULL_RESOURCE_DESCRIPTOR リソース記述子
REG_RESOURCE_REQUIREMENTS_LIST リソース要求リスト

※1:形式としては同一、※2:非リトルエンディアンのシステムで利用

 同一親キーのもとでは、同じ名前を持つ「値」は1つしか存在できないが、親キーが違うなら、同名の「値」は登録可能だ。また、すべてのキーは「(既定)」という名前の「値」を持ち、「種類」は「文字列値」に固定されていて、この名前の「値」をユーザーがあとから作成することはできない。なお、名前には、日本語を含む任意の「文字」が利用できるが、長さは255文字以下となっている。

 データは「種類」に応じたものが格納される。文字列の長さはAPIの仕様上は32bit値で表現(4ギガバイト)されるが、実際に扱える長さは、システムのメモリなどの状態で決まる。逆にいうと、扱える長さは、システムによって違う。レジストリの値は巨大なデータを扱うためには作られておらず、大きなデータを登録することは、システム性能の低下につながる。なお、マイクロソフトでは、2048バイト以上のデータは、ファイルに保存し、そのファイルパスをレジストリに登録することを推奨している。このため、実用上、データの長さは、2048バイト程度となる。

 「値」や「キー」は、ルートキーからの「パス」で指定する。ファイルパスと同様にルートキーから目的のキーまたは「値」まで、親キーを「\」でつないで表現する。レジストリのパスを文字として表現する場合、略号を使うことがある。たとえば、HKEY_LOCAL_MACHINEは、HKLMと表現される。ただし、これは、あくまでも書籍やプログラム表示上の表記方法であって、レジストリエディタなどがインポート/エクスポートするテキストファイルなどでは、省略しない表記方法が必要となる。

 レジストリのうち、ファイルに情報が記録されているキーを「ハイブ」という。レジストリの一部は、このハイブからできている。具体的には、各ユーザーの情報(HKEY_USERS)のサブキーは、それぞれがハイブになっている。また、HKEY_LOCAL_MACHINEのサブキー(HARDWAREを除く)もハイブだ。

 ハイブに対応するファイルの形式は、正式には公開されていないが、インターネットなどでは解析した結果が公開されており、C#などからファイルを操作するためのライブラリなども作られているようだ。

前へ 1 2 次へ

カテゴリートップへ

本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
1
【Amazon.co.jp限定】Lenovo Chromebook クロームブック Duet 11 10.95インチ MediaTek Kompanio 838 プロセッサー​搭載 メモリ8GB eMMC 128GB 重量1.0kg 83HH000TJP パソコン
【Amazon.co.jp限定】Lenovo Chromebook クロームブック Duet 11 10.95インチ MediaTek Kompanio 838 プロセッサー​搭載 メモリ8GB eMMC 128GB 重量1.0kg 83HH000TJP パソコン
¥49,800
2
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
¥129,800
3
Apple 2026 MacBook Air M5チップ搭載13インチノートブック:AIとApple Intelligence、13.6インチLiquid Retinaディスプレイ、16GBユニファイドメモリ、512GB SSDストレージ、12MPセンターフレームカメラ、Touch ID - シルバー
Apple 2026 MacBook Air M5チップ搭載13インチノートブック:AIとApple Intelligence、13.6インチLiquid Retinaディスプレイ、16GBユニファイドメモリ、512GB SSDストレージ、12MPセンターフレームカメラ、Touch ID - シルバー
¥177,333
4
Lenovo ノートパソコン パソコン IdeaPad Slim 3 14.0インチ AMD Ryzen™ 5 8640HS メモリ16GB SSD512GB MS Office搭載 Windows11 バッテリー駆動12.6時間 重量1.39kg ルナグレー 83K90027JP ノートPC
Lenovo ノートパソコン パソコン IdeaPad Slim 3 14.0インチ AMD Ryzen™ 5 8640HS メモリ16GB SSD512GB MS Office搭載 Windows11 バッテリー駆動12.6時間 重量1.39kg ルナグレー 83K90027JP ノートPC
¥108,800
5
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥35,130

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,390
2
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥2,364
3
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥1,025
4
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
¥1,590
5
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
6
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥660
7
KIOXIA(キオクシア)【日本製】SDカード 64GB SDXC UHS-I Class10 読出速度100MB/s 国内正規品 メーカー保証5年 KLNEA064G
KIOXIA(キオクシア)【日本製】SDカード 64GB SDXC UHS-I Class10 読出速度100MB/s 国内正規品 メーカー保証5年 KLNEA064G
¥1,616
8
NIMASO ガラスフィルム iPad 第11世代(A16) 2025用/iPad 10.9インチ 第10世代 2022用 衝撃吸収 強化 ガラス 保護フィルム 指紋防止 ガイド枠付き NTB22I574
NIMASO ガラスフィルム iPad 第11世代(A16) 2025用/iPad 10.9インチ 第10世代 2022用 衝撃吸収 強化 ガラス 保護フィルム 指紋防止 ガイド枠付き NTB22I574
¥1,359
9
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥5,680
10
【Amazon.co.jp限定】 ロジクール ワイヤレスマウス 無線 マウス M185CG 小型 電池寿命最大12ケ月 M185 グレー 国内正規品
【Amazon.co.jp限定】 ロジクール ワイヤレスマウス 無線 マウス M185CG 小型 電池寿命最大12ケ月 M185 グレー 国内正規品
¥999

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン