HKEY_CLASSES_ROOTとは何ですか?

HKEY_CLASSES_ROOTレジストリハイブの詳細

HKEY_CLASSES_ROOTは、 Windowsレジストリ内のレジストリハイブであり、プログラムID(ProgID)、クラスID(CLSID)、およびインターフェイスID(IID)データだけでなく、 ファイル拡張関連情報も含みます

HKEY_CLASSES_ROOTレジストリハイブには、ドライブの内容を表示したり、特定の種類のファイルを開くなど、Windowsが何かを求めたときに何をすべきかを知るために必要な情報が含まれています

HKEY_CLASSES_ROOTに移動する方法

HKEY_CLASSES_ROOTはレジストリハイブであり、レジストリエディタのトップレベルにあります。

  1. レジストリエディタを開く
  2. レジストリエディタの左側の領域でHKEY_CLASSES_ROOTを検索します。
  3. ハイブを展開するには、 HKEY_CLASSES_ROOTという単語をダブルクリックするかダブルタップするか、左側に小さな矢印を使用します

レジストリエディタが以前にコンピュータで使用されていた場合は、HKEY_CLASSES_ROOTハイブが表示される前に開いているレジストリキーをすべて折りたたむ必要があります。 これは、ダブルクリック/タップ、矢印、または矢印を選択することによって、開いたのと同じ方法で実行できます。

HKEY_CLASSES_ROOTのレジストリサブキー

HKEY_CLASSES_ROOTハイブ下のレジストリキーのリストは非常に長く、ちょうど混乱します。 私はあなたが見るかもしれない何千もの鍵のそれぞれを説明することはできませんが、私はいくつかの管理可能な部分に分解することができます。

HKEY_CLASSES_ROOTハイブの下にある多くのファイル拡張子関連キーのうちのいくつかを紹介します。そのほとんどはピリオドで始まります:

これらのレジストリキーはそれぞれ、その拡張子を持つファイルをダブルクリックまたはダブルタップするときにWindowsが何をすべきかに関する情報を格納します。 ファイルを右クリック/タップするときに「開く」セクションにあるプログラムのリストと、リストされている各アプリケーションへのパスが含まれる場合があります。

たとえば、自分のコンピュータで、 draft.rtfの名前でファイルをダブルクリックするかダブルタップすると、ワードパッドがファイルを開きます。 それが起こるレジストリデータは、私のコンピュータ上で、 RTFファイルを開くプログラムとしてワードパッドを定義するHKEY_CLASSES_ROOT \ .rtfキーに格納されます。

警告: HKEY_CLASSES_ROOTキーの設定の複雑さのため、レジストリ内からデフォルトのファイルの関連付けを変更することは絶対にお勧めしません 。 代わりに、通常のWindowsインターフェイスでこれを行う方法については、「 Windowsでのファイルの関連付けを変更する方法」を参照してください。

HKCR& amp; CLSID、ProgID、& IID

HKEY_CLASSES_ROOTの残りのキーは、ProgID、CLSID、およびIIDキーです。 それぞれの例を次に示します。

ProgIDキーは、HKEY_CLASSES_ROOTのルートに、上で説明したファイル拡張子の関連付けの横にあります。

すべてのCLSIDキーは、 CLSIDサブキーの下にあります。

すべてのIIDキーは、 Interfaceサブキーの下にあります。

ProgID、CLSID、およびIIDのキーは、コンピュータプログラミングのいくつかの非常に技術的な側面に関連しており、この説明の範囲を超えています。 ただし、ここ3つ、ここ、ここの3つすべてについて詳しく読むことができます。

HKEY_CLASSES_ROOTハイブのバックアップ

例外なく、編集または削除を計画しているレジストリエントリのバックアップは常に作成する必要があります。 HKEY_CLASSES_ROOTまたはレジストリの他の場所をREGファイルにバックアップする際に役立つ必要がある場合は、Windowsレジストリをバックアップする方法を参照してください。

何か問題が起きた場合は、Windowsレジストリをバックアップした状態でいつでも元の状態に戻すことができます。 あなたがしなければならないことは、そのREGファイルをダブルクリックするかダブルタップして、変更を加えたいことを確認することだけです。

HKEY_CLASSES_ROOTの詳細

HKEY_CLASSES_ROOTハイブのサブキーを編集して完全に削除することはできますが、レジストリ内のすべてのハイブと同様に、ルートフォルダ自体の名前を変更したり、削除したりすることはできません。

HKEY_CLASSES_ROOTはグローバルハイブです。つまり、コンピュータ上のすべてのユーザーに適用される情報を含めることができ、すべてのユーザーが表示することができます。 これは、現在ログインしているユーザーだけに適用される情報を持つ一部のハイブとは対照的です。

ただし、HKEY_CLASSES_ROOTハイブは実際にはHKEY_LOCAL_MACHINEハイブ( HKEY_LOCAL_MACHINE \ Software \ Classes )とHKEY_CURRENT_USERハイブ( HKEY_CURRENT_USER \ Software \ Classes )の両方にあるデータを結合しているため、ユーザー固有の情報も含まれています。 その場合でも、HKEY_CLASSES_ROOTは、すべてのユーザーがブラウズできます。

これはもちろん、HKEY_CLASSES_ROOTハイブで新しいレジストリキーが作成されると、HKEY_LOCAL_MACHINE \ Software \ Classesに同じレジストリキーが表示され、いずれかからHKEY_LOCAL_MACHINE \ Software \ Classesが削除されると、同じキーが別の場所から削除されます。

レジストリキーが両方の場所に存在し、何らかの方法で競合する場合、サインインされたユーザーのハイブHKEY_CURRENT_USER \ Software \ Classesにあるデータが優先され、HKEY_CLASSES_ROOTで使用されます。