「exeを実行すると「開くプログラムの選択」の窓がでる」について、似たような現象に遭遇したのでその再現方法と解決方法について紹介します。 私の場合は、拡張子がEXEのファイルを実行しようとすると、常に同じプログラムが実行されてしまうようになってしまいました。 ここでは、Windows7のWindowXPモードを使用していますが、通常のWindowsXP(SP3)で確認済みです。

再現方法

これをやる場合は自己責任で。何が起こっても筆者は責任を負いかねます(^_^)
  1. まず、C:\Windows\NOTEPAD.EXEをマイドキュメントにコピーします。
  2. 次にコピーしたNOTEPAD.EXEをスタートメニューにドラッグ&ドロップしてショートカットを作成します。
  3. マイドキュメントのNOTEPAD.EXEを削除します。
  4. スタートメニューからNOTEPADを実行します。 ショートカットの元のファイルが削除されているのでリンク先がないというメッセージが表示されます。ここで、リンク先を変更してもよいかどうか確認を求められるのでYESをクリックします。 メモ:NOTEPAD.EXEはC:Windows以下にあるのでこうなりますが、 C:\Windowsディレクトリにない別のEXEファイルのショートカットについてどうようなことをやると、リンク先がないので削除するかどうかというメッセージが表示されますので、いいえをクリックして、ショートカットのプロパティから変更ボタンを押して正しいリンク先を選択します。
  5. もう一度スタートメニューからNOTEPADを実行すると・・・ NOTEPADは実行されるのですが、ウィンドウになにやら意味不明の文字が・・v( ̄∇ ̄)v どうやらNOTEPADでNOTEPAD.EXEをオープンしてしまっているようです。
  6. 試しに、C:Windows\REGEDIT.EXEをExplorerから実行させると・・ なぜかNOTEPADが実行されて、ウィンドウに意味不明の文字が・・ NOTEPADでREGEDIT.EXEを実行してしまったようです。 ようするに、拡張子EXEのファイルをExplorerから実行しようとすると、NOTEPADでそのEXEファイルをオープンするようになってしまったわけです 川 ̄_ゝ ̄)ノ

解決方法

  1. レジストリエディタを実行
    解決方法ですが、レジストリエディタを使います。 でも、REGEDIT.EXEは実行できない状態です・・ レジストリエディタを実行する方法は2つあります。
    • command.comを実行してコマンドプロンプトからC:\REGEDIT.EXEを実行する。
    • explorerからC:REGEDIT.EXEの名前をREGEDIT.EXE.COMに変更して実行する。
  2. HKEY_USERS\<ユーザーのSID>\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.EXEというキーを検索します。 ユーザのSIDというのはS-1-で始まるIDのことです。
  3. そのキーをサブキーごと削除します。 これで復旧作業は終了です。 スタートメニューからNOTEPADを実行することができるようになりました(´∀`)