2015年4月10日金曜日

Windows 7 : シンボリックリンクに対する関連付けメニューが表示されなくなった~解決~

2015-04-14 追記。

警告

この記事は、Windows Update の更新プログラムによって修正された脆弱性を再発させると考えられる内容となっているため、適用されないことを強くお勧めします。

の続きです。

あれ以来結局不便なまま運用していましたが、解決方法のすばらしいコメントを頂きました。内容は、Windows 10 Technical Preview のレジストリを移植する、というものです。ご指摘頂くまでこの発想に至りませんでした。

具体的には、Windows 10 で次のレジストリキー、

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.symlink

以下をエクスポートして、Windows 7 でインポートし再起動するだけです。

"HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.symlink\shellex\ContextMenuHandlers" というキーもあったりしていかにもそれっぽい雰囲気が漂っています。

HKEY_CURRENT_USER\Software\Classes\.symlink

に作成すればユーザ単位で適用可能です。

Windows 7 側にはもともとこのキーは存在していませんので、Windows Update の更新プログラムがキーの作成を忘れて(あるいは失敗して?)いるのでしょうね。

なお、関連付けの動作は解決しますが、エクスプローラの詳細表示の「種類」は元通りにはならないようで、拡張子に応じたファイルタイプは表示されません(これは Windows 10 Technical Preview も同様)。

何にしても、機能が回復して良かったです。情報提供ありがとうございました!

2 件のコメント:

  1. 同じ問題で困ってました。ありがとうございます。

    ただし、問題の脆弱性は「悪意あるリンクの含まれたディレクトリをエクスプローラで開くだけで、任意のコードが実行される」というもので、
    おそらくこのトラブルは、その対策として「エクスプローラでリンクを辿らないようにする」ため、「リンク関連のレジストリを削除した」結果だと思われます。
    つまり、この作業はKB3039066が削除したレジストリキーを復元する(≒KB3039066を無意味にする)作業です。

    インターネットやLAN、あるいは物理メディアによって運搬される、悪意あるリンクを含んだフォルダをエクスプローラで閲覧しない確信がある場合を除き、気を付けた方が良いです。

    返信削除
    返信
    1. おっしゃる通り、脆弱性を再発させてしまうと考えられるので危険ですね。浅はかでした。
      情報として記事を削除することはしませんが、警告文を付けさせて頂きました。

      忠告ありがとうございました。

      削除