Windows 10

【Windows10】レジストリとは何か

2018年10月27日


Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548

Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548

Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548

Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548

Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548

Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548

Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548

Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548

こんにちは!SE ブログの相馬です。

 

 

 

今回はレジストリについて書いてみました。レジストリそのものについてまとめ的に調べた事が今までないので、ここでまとめてみました。

 

 

 

Windows のレジストリとは

 

 

まず、レジストリはデータベースです。(階層型データベースと呼ばれています。)

 

 

レジストリにはサービスやアプリケーションなど、Window に使われている全ての設定がこのデータベースに格納されています。

 

 

そして、このデータベースは主に Key と Value から構成されております。

 

 

以下の画像のように、Key は基本的にフォルダーのようなものになります。Value はファイルのようなもので、Value には実際にデータが格納されています。

 

 

 

 

エクスプローラーで言えば、フォルダの中にファイルが入っているようなイメージと思って良いでしょう。

 

 

 

初めてレジストリを見た時に、ツリー上に沢山のものがぶら下がっていて何が何だかよくわからないかと思います。私がそうでした。(笑)

 

 

 

レジストリは何の為に使われるのか

 

 

上の 「Windows のレジストリとは」 で書いてあるとおり、レジストリには Window 全ての設定が格納されています。

 

 

通常、Windows の設定を変更する場合は GUI で変更しますが、できない場合もあります。例えば Windows のシャットダウンの表示を消したりするような事です。

 

 

このようにシステム管理という点において、Windows・アプリケーションやサービスの設定を変更する為にレジストリは使われます。

 

 

 

レジストリを見る方法

 

 

レジストリにアクセスする為にはレジストリエディターを使います。

 

 

以下の画像のように、Windows のスタートメニューをクリックして、regedit と入力しエンターキーを押せばレジストリエディターが起動します。

 

 

 

それでは、レジストリの種類について見てゆきましょう。

 

 

 

レジストリのルートキーについて

 

 

レジストリには親となるルートキーとなるものがあります。この種類を理解すると、レジストリを設定するにあたり、どのルートキーに対して設定すれば良いかが把握できますので重要です。

 

 

是非とも覚えておきましょう。

 

 

 

HKEY_CLASSES_ROOT

 

 

ファイルの拡張子と関連付けについての情報が格納されています。長いので、よく HKCR と短縮されて使われます。

 

 

 

 

またこのキーは、HKLM\Software\Classes にリンクしています。

 

 

 

 

HKEY_CURRENT_USER

 

 

ログイン中のユーザーの設定が格納されています。長いので、よく HKCU と短縮されて使われます。

 

 

またこのキーは、HKEY_USERS\ログイン中の SID にリンクしています。

 

 

 

HKCU では、ユーザーが変更できるアプリケーションの設定が格納されています。ですのでこの HKCU 下のサブキーにある value は、ユーザー権限で変更したり追加する事ができます。

 

 

 

HKEY_USERS に格納されている中にある、Windows にログオンするユーザーに必要な情報があり、それが選択され HKCU にコピーされます。

 

 

 

HKEY_LOCAL_MACHINE

 

 

システムについて全ての設定が格納されています。つまりシステム全体の設定になります。長いので、よく HKLM と短縮して使われます。

 

 

 

HKLM\Software のサブキーで設定する value は、ユーザーのみではなく、PC 全体に設定されます。また設定した値はユーザー権限で変更する事ができません。

 

 

 

また、外付けのハードウェアについてのドライバについての情報も格納されています。

 

 

 

HKEY_USERS

 

 

ユーザー別とデフォルトの設定を含む設定が格納されております。つまり、全てのユーザーの HKCU がここに格納されています。ユーザー別の設定を確認したい時に便利だと思います。

 

 

 

サブキーはユーザーアカウントが SID で表示されています。例えば、ログオン中のユーザーの SID を確認したい場合は以下の画像のようにコマンドを実行して確認ができます。

 

 

このように、別のユーザーの SID が分かれば別のユーザーの HKCU を見る事ができます。

 

 

 

 

HKEY_CURRENT_CONFIG

 

 

使用中のプリンタとディスプレイの機器についての情報がここに格納されます。使う機会は余り無いかと思います。

 

 

またこのキーは、HKLM\SYSTEM\CurrentControlSet\Hardware Profiles\Current にリンクしています。

 

 

 

 

レジストリの作成方法

 

 

必ずバックアップを取得してから試しましょう。

 

 

以下の画像のように左のサブキー、または右ペインの余白のところを右クリックして、[新規] にマウスカーソルを当てると、キーまたは値を作成するか選びます。

 

 

値についての説明は、以下の項目で説明しておりますので、参考にしていただけると嬉しいです。

 

 

 

 

レジストリの値について

 

 

レジストリを作成する際に、どの値を作成するか以下の情報が参考になるかと思います。

 

レジストリのデータ種類 値の説明
文字列

(REG_SZ)

固定長の文字列になります。
バイナリ値

(REG_BINARY)

未加工のバイナリデータになります。16 進数で入力します。基本的には殆ど追加・変更する事は無いかもしれません。
DWORD (32-bit) 値

(REG_DWORD)

ドライバやアプリやサービスに使われます。2 進・10 進・16 進数で入力します。
QWORD (64-bit) 値

(REG_QWORD)

DWORD の 64 ビット版になります。基本的には DWORD のほうをよく使われる場合が多いかと思います。
複数行文字列値

(REG_MULTI_SZ)

複数行の文字列になります。
展開可能な文字列値

(REG_EXPAND_SZ)

環境変数で使われる可変長の文字列になります。

 

 

 

まとめ

 

 

以上になります。いかがでしょうか。

 

 

デスクトップ PC の使用を GUI で設定できない部分を変更するには、どうしてもレジストリの設定は必要になってきます。

 

 

ですので、基礎知識としてこういった情報を理解しておくと、実際にどこのキーにどの値を設定すればよいのかが何となく把握できるのではないかと思われます。

 

 

また、レジストリのバックアップと復元についても記事を書きましたので、合わせてこちらも見ていただけますと嬉しいです。

 

 

 

では最後までお読みいただきありがとうございました!

 

 

 

  • この記事を書いた人

そーまん

セキュリティエンジニアやってます。
ブログ歴3年。PVは月15万PV程度。
趣味はボクシング、筋トレ、登山です。
穏やかで人見知りな性格です。

人気記事

1

こんにちは!そーまんです。 今回は、PC に適用されている GPO を確認する方法について書きました。 本題に入る前に、一応参考までにGPOの適用タイミングについての記事をここに貼りましたので、必要に ...

2

こんにちは!そーまんです。 今回は sysprep について、全体的に PC をセットアップする観点から書いてみました。長々と書いてあります。まずは前置きからです。 まずはじめに 組織では PC のラ ...

3

こんにちは!そーまんです。 今回は、グループポリシー (GPO) を使って、特定のコンピューターに対して、ドメインユーザーに ローカル管理者権限 (以下は特権と記載) を付与する方法について書きました ...

4

こんにちは!そーまんです。 今回は、Windows サインイン後に一時ユーザープロファイルが読み込まれてしまった場合の解決方法について書きました。 Windows 10 の検証環境をいじってたらサイン ...

5

こんにちは!そーまんです。 今回は、ユーザープロファイルを削除する方法について書いてみました。 企業の場合よくあることですが、1 台の PC を共有 PC として複数人で使ったり、また余り無いかもしれ ...

6

こんにちは!SE ブログの相馬です。       今回は、繰り返し文について書いてみました。PowerShell では他のプログラミング言語同様、繰り返し処理を行うことが ...

7

コマンドを使って CPU とメモリの使用率をデータで取得してみましたので、例えば PC のトラブルシューティングで問題を再現させる際にデータを取得しておくと、原因の特定に役立つ場合があるかと思います。

8

既存の PC と同じ構成で別のメーカーの PC でマスターイメージを作る際、インストールされているアプリを同一にする為に必要になるかと思います。

9

企業で多くの GPO が適用されている環境では、PC に GPO が適用されなかったりする問題が発生する場合があるかと思います。その中でも、コンピューターの構成またはユーザーの構成のどちらかで、...

10

こんにちは!そーまんです。 今回は、Windows Server 2019 で NTP サーバーと同期する方法について書きました。 NTP サーバーの必要性や時刻同期の重要性を理解することは社内のシス ...

-Windows 10
-,


Warning: Trying to access array offset on value of type null in /home/r5652521/public_html/soma-engineering.com/wp-content/plugins/amazonjs/amazonjs.php on line 637

Warning: Trying to access array offset on value of type null in /home/r5652521/public_html/soma-engineering.com/wp-content/plugins/amazonjs/amazonjs.php on line 637