Skip to main content

さまざまな種類のレジストリ値は何ですか?

Azure Friday | HashiCorp Terraform on Azure (マーチ 2024)

Azure Friday | HashiCorp Terraform on Azure (マーチ 2024)
Anonim

Windowsレジストリには、 値 Windowsとアプリケーションが参照する特定の命令が含まれています。

多くの種類のレジストリ値が存在しますが、そのすべてについて以下で説明します。文字列値、バイナリ値、DWORD(32ビット)値、QWORD(64ビット)値、複数文字列値、および展開可能な文字列値が含まれます。

レジストリ値はどこにありますか?

レジストリ値は、Windows 10、Windows 8、Windows 7、Windows Vista、およびWindows XPのレジストリ全体で確認できます。

レジストリエディタには、レジストリ値だけでなく、レジストリキーとレジストリハイブもあります。これらのオブジェクトはそれぞれフォルダのようなもので、レジストリエディタの左側に表示されます。レジストリ値は、次に格納されるファイルのようなものです 内部 これらのキーとその "サブキー"。

サブキーを選択すると、レジストリエディタの右側にすべてのレジストリ値が表示されます。これはWindowsレジストリの唯一の場所で、レジストリ値が表示されます。レジストリ値は左側にリストされていません。

ここでは、レジストリの値を太字で示したレジストリの場所の例をいくつか示します。

  • HKEY_LOCAL_MACHINE ハードウェア説明システム BIOS BIOSVendor
  • HKEY_CURRENT_USER Environment TEMP
  • HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Control 現在の使用者

各例では、レジストリ値は右端のエントリです。レジストリエディタでは、これらのエントリがファイルとして 右 側。各値はキーに保持され、各キーはレジストリハイブ(上記の一番左のフォルダ)で生成されます。

この正確な構造は、Windowsレジストリ全体で例外なく維持されます。

レジストリ値の種類

Windowsレジストリにはいくつかの異なるタイプのレジストリ値があり、それぞれ異なる目的で作成されています。一部のレジストリ値では、読みやすく理解しやすい通常の文字と数字が使用されますが、他のユーザーはバイナリまたは16進数で値を表現します。

文字列値

文字列の値は赤いアイコンで示され、文字「ab」が表示されます。これらはレジストリで最も一般的に使用される値であり、最も人間が読める値です。文字、数字、記号を入れることができます。

文字列値の例を次に示します。

HKEY_CURRENT_USER Control Panel Keyboard KeyboardSpeed

あなたが KeyboardSpeed レジストリのこの場所にある値には、次のような整数が与えられます。 31 .

この特定の例では、文字列値は、そのキーが押されたときに文字が繰り返される割合を定義します。値を変更する場合は 0 速度が31にとどまる場合よりもはるかに遅くなります。

Windowsレジストリ内のすべての文字列値は、レジストリ内の場所によって異なる目的で使用され、それぞれ異なる値で定義されたときに特定の機能を実行します。

たとえば、 キーボード サブキーと呼ばれるサブキーです InitialKeyboardIndicators。 0から31までの数値を選択する代わりに、この文字列の値は0または2のいずれかしか受け入れません.0は、コンピューターの最初の起動時にNUMLOCKキーがオフになることを意味し、2の値はNUMLOCKキーをオンにしますデフォルトでは

これらは、レジストリ内の文字列値の唯一のタイプではありません。他の人は、ファイルやフォルダのパスを指すか、システムツールの説明として機能します。

文字列値は、レジストリエディタでレジストリ値の "REG_SZ"タイプとして一覧表示されます。

マルチストリング値

マルチストリング値はストリング値に似ていますが、唯一の違いは、 リスト 1行ではなく値を使用します。

Windowsのディスクデフラグツールでは、以下のマルチストリング値を使用して、サービスに権限が必要な特定のパラメータを定義します。

HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services defragsvc RequiredPrivileges

このレジストリ値を開くと、次のすべての文字列値が含まれていることが示されます。

SeChangeNotifyPrivilege SeImpersonatePrivilege SeIncreaseWorkingSetPrivilege SeTcbPrivilege SeSystemProfilePrivilege SeAuditPrivilege SeCreateGlobalPrivilege SeBackupPrivilege SeManageVolumePrivilege

レジストリ内のすべてのマルチストリング値が複数のエントリを持つわけではありません。単一の文字列値とまったく同じように機能するものもあれば、必要な場合にはさらに多くのエントリのための追加の領域があります。

レジストリエディタは、レジストリ値の "REG_MULTI_SZ"タイプとして複数の文字列値をリストします。

拡張可能な文字列値

拡張可能な文字列値は、変数を含む点を除いて、上の文字列値と同じです。これらのタイプのレジストリ値がWindowsまたは他のプログラムによって呼び出されると、その値は次のようになります。 拡張された 変数が定義しているものに変更します。

ほとんどの展開可能な文字列値は、値に%記号が含まれているため、レジストリエディタで簡単に識別できます。

環境変数は、展開可能な文字列値の良い例です:

HKEY_CURRENT_USER Environment TMP

ザ TMP 拡張可能な文字列値は %USERPROFILE% AppData Local Temp 。このタイプのレジストリ値のメリットは、データにはユーザーのユーザー名が含まれている必要がないことです。 %USERPROFILE% 変数。

Windowsや他のアプリケーションがこれを呼び出すと TMP 値は、その変数が設定されているものに変換されます。デフォルトでは、Windowsはこの変数を使用して次のようなパスを表示します。 C: Users Tim AppData Local Temp .

"REG_EXPAND_SZ"は、レジストリエディタが展開可能な文字列値をとして表示するレジストリ値の種類です。

バイナリ値

名前が示すように、これらのタイプのレジストリ値はバイナリで書かれています。レジストリエディタのアイコンの青色は1と0です。

HKEY_CURRENT_USER Control Panel Desktop WindowMetrics CaptionFont

上記のパスは、Windowsレジストリにあります。 CaptionFont バイナリ値です。この例では、このレジストリ値を開くと、Windowsのキャプションのフォント名が表示されますが、データは人間が読める形式ではなくバイナリで書き込まれます。

レジストリエディタは、バイナリ値のレジストリ値の種類として "REG_BINARY"を一覧表示します。

DWORD(32ビット)値とQWORD(64ビット)値

DWORD(32ビット)値とQWORD(64ビット)値の両方には、Windowsレジストリに青色のアイコンがあります。それらの値は、10進数または16進数形式で表すことができます。

1つのアプリケーションがDWORD(32ビット)値を作成し、もう1つのQWORD(64ビット)値が32ビット版または64ビット版のWindowsから実行されているのではなく、ビット長値のつまり、32ビットと64ビットの両方のオペレーティングシステムで両方の種類のレジストリ値を持つことができます。

この文脈において、「単語」は16ビットを意味する。 DWORDは「ダブルワード」または32ビット(16 X 2)を意味します。このロジックに続いて、QWORDは「クワッドワード」または64ビット(16×4)を意味します。

アプリケーションは、これらのビット長規則に準拠するために必要な適切なレジストリ値を作成します。

以下は、Windowsレジストリ内のDWORD(32ビット)値の1つの例です。

HKEY_CURRENT_USER コントロールパネルパーソナライゼーションデスクトップスライドショーインターバル

このDWORD(32ビット)値を開くと、1800000(および16進数では1b7740)の値データが表示される可能性があります。このレジストリ値は、スクリーンセーバーが写真スライドショーの各スライドをどのくらい速く(ミリ秒単位で)移動するかを定義します。

レジストリエディタは、レジストリ値の「REG_DWORD」および「REG_QWORD」タイプとしてそれぞれDWORD(32ビット)値とQWORD(64ビット)値を表示します。

レジストリ値のバックアップと復元

1つの値だけを変更しても問題はありませんが、 常に 予期せぬ事態が発生した場合に備えて、レジストリエディタに戻すことができるように、起動する前にバックアップを作成してください。

残念ながら、個々のレジストリ値をバックアップすることはできません。代わりに、値が入っているレジストリキーのバックアップを作成する必要があります。これを行うには、Windowsレジストリをバックアップする方法を参照してください。

レジストリバックアップはREGファイルとして保存され、変更を元に戻す必要がある場合はWindowsレジストリに復元することができます。ヘルプが必要な場合は、Windowsレジストリを復元する方法を参照してください。

レジストリ値をいつ開く/編集する必要がありますか?

新しいレジストリ値を作成したり、既存のレジストリ値を削除/編集することで、Windowsや他のプログラムで発生している問題を解決できます。レジストリ値を変更して、プログラムの設定を微調整したり、アプリケーションの機能を無効にすることもできます。

場合によっては、単に情報目的のためにレジストリ値を開く必要があるかもしれません。

レジストリ値を編集または開くことを含むいくつかの例を次に示します。

  • 死のブルースクリーンを偽る方法
  • お使いのコンピュータの現在のBIOSバージョンを確認する方法
  • Windowsでプログラムを狙うのを防ぐ方法
  • Windows 7の自動ログインを作成する方法

レジストリ値を変更する一般的な概要については、「レジストリキーと値を追加、変更、削除する方法」を参照してください。

レジストリ値の詳細

レジストリ値を開くと、そのデータを編集できます。あなたがそれらを起動するときに実際に何かをするあなたのコンピュータ上のファイルとは異なり、レジストリ値はそれらを編集するために単に開いています。言い換えれば、それは完全に安全です 開いた Windowsレジストリ内のレジストリ値。しかしながら、 編集 あなたが何をやっているのかを最初に知ることのない価値観は良い考えではありません。

レジストリ値の変更は、コンピュータを再起動するまで有効にならない場合があります。他のものは再起動をまったく必要としないので、その変更はすぐに反映されます。レジストリエディタでは、再起動が必要なものは何も表示されないため、レジストリの編集が正常に動作していない場合は、コンピュータを再起動する必要があります。

Windowsレジストリ内のいくつかのレジストリ値が次のように表示されることがあります。 REG_NONE 。これらは、空のデータがレジストリに書き込まれたときに作成されるバイナリ値です。このタイプのレジストリ値を開くと、その値のデータが16進形式の0として表示され、レジストリエディタはこれらの値をa (長さゼロのバイナリ値) .

コマンドプロンプトを使用すると、レジストリキーを削除して追加することができます。 reg delete そして reg add コマンドスイッチ。

レジストリキー内のすべてのレジストリ値の最大サイズは64キロバイトに制限されています。