【Windows 10】右クリックでエクスプローラーがクラッシュする時の対処方法
概要
Tortoise SVN を入れていたWindows 10 で、ソース公開用にGit for windows 及び Tortoise Git をインストール。
しかし、右クリックでフォルダをクリックすると、git管理下か否かに依らずエクスプローラーがクラッシュするように。Win10にしてからエクスプローラーが不安定だったので本格的に調査開始
シェル拡張を管理・無効化するプログラム(ShellEx View)の導入で解決
シェル拡張 (Shell Extension)とは
7Zipなんかのソフトをインストールすると、ファイルやフォルダを右クリックしたときに「7Zipで解凍/圧縮」といったメニューが表示されることがあります。
また、Dropboxを使っていると、Dropbox内のファイル・フォルダが同期済み/同期中かをアイコンで表示してくれたり。
こういう機能を総称してシェル拡張(Shell Extension)と言います。アプリごとによく使う機能をWindowsの Explorerと統合して使いやすく出来るんですね。
解決方法
エクスプローラー上の右クリックで出るメニュー(Context Menu)が表示されずにエクスプローラーが落ちるということは、明らかにここが怪しいです。
ということで、行き当たったこちらのページに従って、
ShellEx Viewなるソフトをダウンロード・実行。
Options->Hide All Microsoft Extensions にチェック。
Context Menu に該当するシェル拡張(Type が Context Menu となっているもの。右クリックした時の追加項目です。)のうち、必要なもの(私の場合, Tortoise SVN) 以外を全てDisableに。
以上で無事解決しました。Windowsでエクスプローラーが不安定/クラッシュする際は、同ソフトでシェル拡張を無効化するのを試してみては。
余談
git のクライアントはTortoise Git はやめて、Source Tree を使うことにしました。
以前、Windows10 でtortoise svnのアイコンが正しく表示されない問題
を解決する際にレジストリをいじっていたので、レジストリのアイコンオーバーレイ(Tortoise SVN とかでファイルフォルダに✓/!マーク が付くアレです) に関する項目を見に行ってみました。
するとTortoise Git では同じ内容のレジストリキーが違う命名規則で名付けられていて(上記問題に対応するためと思われます)、↑のクラッシュ問題も含めて混在させるのがなんだか怪しそうな気がしたからです。
ちなみに、Win+R -> regedit で見られるアイコンオーバーレイのレジストリキーはここ↓です。レジストリの編集は危険なので くれぐれも安易に編集しないように
\HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerShellIconOverlayIdentifiers