目的と場所に対するあなたの最大の手がかりは、「大きなタイプ」、つまりそれぞれのハイブの名前:HKLMおよびHKCUです
ファイルの関連付けは両方のハイブで設定され、2つの異なる目的があります。
名前が示すように、HKCUレジストリエントリは、CURRENT USERのファイルの関連付けを設定し、HKLMの対応するファイルの種類の設定を上書きします。
HKLMは、ローカルマシン、つまり、マシンのすべてのユーザー(HKCUエントリによってオーバーライドされない限り)のファイルの関連付けを設定します。(Win98の場合、HKCRはHKLM \ Software \ Classesの略称でした。別々のハイブや異なるハイブではありませんでした。しかし、これはWin XPで変更され、もはや真実ではありません。 HKLM \ Software \ Classes \、HKCU \ Software \ Classes \、およびHKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExtsキー。HKCU情報が優先されます。
この2ステップシステムにより、1対1だけでなく、多対1および1対多のファイル関連付けスキームが容易になります。たとえば、.htm、.html、および.shtmlファイルタイプはすべてProgID = htmlfileに設定でき、これにより単一のブラウザを定義できます。OTOHでは、複数のブラウザー、エディター、または他のアプリのリストからファイルを開くための複数のエントリーを持つOpenWithListまたはOpenWithProgIDサブキーをエントリーに含めることができます。
HKLM \ Software \ Classes \とHKCU \ Software \ Classesは両方とも同じように動作します(一方が他方に優先するだけです)。最も単純な形式では、デフォルト値が対応するProgID(txtfileなど)であるファイル拡張子(HKCR.txtなど)のレジストリキーがあります。デフォルト値に加えて、またはデフォルト値の代わりに、「OpenWithProgID」サブキーに対して追加のProgID名(txtfileやhtmlfileなど)がリストされたり、「OpenWithList」の下にサブキーとして表示される追加のアプリケーション名(Notepad ++など)があります。 .exe、Opera.exe、Firefox.exe)。
各ProgIDは、HKCR内の別のキーで定義されます(HKCR \ txtfileなど)。このキーには、使用するアイコンと、関連付けられたファイル(HKCR \ txtfile \ shell \ open \ commandなど)を開く方法、印刷する方法、印刷する方法などをウィンドウに伝えるサブキーが含まれています。同様に、各アプリケーション名は、HKCR \ Applicationsの下にサブキーとして定義されます(例:HKEY_CLASSES_ROOT \ Applications \ Firefox.exe \ shell \ open \ command)。
HKCU \ Software \ Classesキーに加えて、ユーザーアカウントファイルの関連付けはHKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExtsキーにあります。これらのエントリは、提案されているようにWindowsエクスプローラ専用ではなく、ユーザーアカウントファイルの関連付けのオーバーライドの追加ソースです。エントリは、エクスプローラのファイル関連付けツール(Explorer \ Tools \ Folder Options \ File Types)によって作成され、リストされた各ファイル拡張子のOpenWithListおよび/またはOpenwithProgIDサブキーを含みます。
ファイルの関連付けを決定するために、Windowsはまず対応するファイル拡張子のHKCUエントリを調べます。見つからない場合にのみ、HKLMエントリが有効になります。(注:HKCU \ Software \ ClassesまたはHKCU \ MIcrosoft \ Windows \ CurrentVersion \ Explorer \ FileExtsのいずれを優先するかはテストしていませんが、FileExtsキーであると思われます)。同様に、参照されているProgIDまたはアプリケーション名がHKCUで見つからない場合、HKLMエントリが検索されます。(\ Applications \エントリは単なる任意の名前であることに注意してください-通常はディスク上のexeファイルの実際の名前と同じです。)
そのため、特定のユーザーアカウントのファイルの関連付けを定義するには、HKCUハイブにエントリを作成します。すべてのユーザーの関連付けを定義するには、HKLMハイブ(HKCR)にエントリを作成し、HKCUハイブからそのファイルタイプへのすべての参照を削除します。明らかに、レジストリキーへの適切なアクセス権が必要です。
インタラクティブモードまたはバッチモードでRegEditを使用することを好むため、assocおよびftypeツールは使用しませんが、他のコメントからは、HKLMハイブでのみ動作し、HKCUキーのクリア/設定には役に立たないようです。少し時間を取り、RegEditで上記のキーを参照して、他の例を参照してください。