web-dev-qa-db-ja.com

.exeファイル拡張子をWindowsのプログラムにどのように関連付けますか?

数年前、.exeファイル拡張子をInternetExplorerに関連付けて、誰かが誰かにいたずらをしているのを見ました。これにより、ユーザーがプログラムを開始するたびにInternetExplorerが開きました。

残念ながら、これがどのように行われたかを忘れました。 Default Programs > Set Associationsコントロールパネルツールを使用しようとしましたが、.exeが表示されませんでした。

このファイルの関連付けをどのように設定できますか、そしておそらくもっと重要なことに、どのように設定を解除できますか?

16
Peter Olson

そのような「いたずら」を行う場合、ステップバイステップのチュートリアルまたはバッチスクリプトに従うだけでは十分ではありません。実際のデータがどのように保存されているかを知っておくのが最善です。後で回復するのが簡単になります。

すべてのファイルの関連付けはレジストリに保持され、regeditまたはregを使用して編集できます。 -)。シェルは、_HKEY_CLASSES_ROOT_(システム全体)と_HKEY_LOCAL_MACHINE\Software\Classes_(ユーザーローカル)のマージされたビューである_HKEY_CURRENT_USER\Software\Classes_の下でそれらを探します。

  • [_HKEY_CLASS_ROOT_]
    • [_.txt_]
      • (デフォルト)= "txtfile" –HKCRの下の別のキーへのポインタ
    • [txtfile]
      • (デフォルト)= "_Text Document_" –エクスプローラーに表示されるテキストによる説明
      • [Shell] –ダブルクリックとコンテキストメニューに使用するアクション
        • (デフォルト)=(未設定)–使用するアクションダブルクリック;デフォルトは「open」です
        • [open]
          • (デフォルト)=(未設定)–コンテキストメニューに表示されるラベル;デフォルトは「Open」です
          • [command]
            • (デフォルト)= "_%SystemRoot%\system32\NOTEPAD.EXE %1_"

ほとんどの拡張機能では、HKCR\.extn\(Default)値は同じHKCRの下のファイルタイプキーを指します。たとえば、_.exe_は_HKCR\exefile_を指します。

(ただし、まれに、すべての情報が拡張機能のキーの下に直接あり、HKCR\.extn\(Default)に説明が含まれています。これらはveryのようです。 )まれですが、Windows 9xまたは3.xの残り物かもしれません...)

バックアップを作成します。_reg save HKLM\Software\Classes hklm-classes.hiv_また、コマンドプロンプトは拡張機能を考慮しないことに注意してください。実行可能プログラムを実行しようとすると、名前の付け方や拡張子の関連付けに関係なく、常に実行されます。

20
user1686

これを試して:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.exe]
@="exefile"
"Content Type"="application/x-msdownload"

[HKEY_CLASSES_ROOT\.exe\PersistentHandler]
@="{098f2470-bae0-11cd-b579-08002b30bfeb}"
2
kinokijuf