Windowsのエクスプローラで JavaScript ファイルが以前のデザインのアイコンで表示される現象について紹介します。
Visual Studio がインストールされている環境にもかかわらず、JavaScriptファイルのアイコンが古いスタイルのアイコンで表示されます。
本来はVisual StudioのJavaScriptファイルのアイコンが表示されるため、下図の表示になることを期待しています。
正常にアイコンが表示されるマシンでレジストリエディタを開き \HKEY_CLASSES_ROOT\.js
キーを開きます。(既定)
の値が "(値の設定なし)" になっていることがわかります。
OpenWithProgids
キーを開きます。値に VisualStudio.js.e0adcfe4
の値があることが確認できます。
続いて古いスタイルのアイコンが表示されるマシンで、レジストリエディタを開き、\HKEY_CLASSES_ROOT\.js
キーを開きます。(既定)
の値が "JSFile" になっていることがわかります。
OpenWithProgids
キーを開きます。値に VisualStudio.js.*
の値が2つあることが確認できます。
\HKEY_CLASSES_ROOT\JSFile
キーを開きます。` 下図の画面が表示されます。
子キーの\HKEY_CLASSES_ROOT\JSFile\DefaultIcon
キーを開きます。(既定)
の値に "C:\Windows\System32\WScript.exe,3" が指定されてます。この指定されているアイコンが古いスタイルのアイコンです。
\HKEY_CLASSES_ROOT\.js
の規定値で JSFile
が指定されているため、 \HKEY_CLASSES_ROOT\JSFile
で指定されているアイコンが表示に使われるため、古いスタイルのアイコンが表示されることが原因だと考えられます。
JSFile
の指定を外せば、OpenWithProgids
キーに記載されているVisual Studioの設定が優先され、新しいスタイルのアイコンで表示されるのではとの見込みです。
アイコンが古いスタイルで表示されるマシンでレジストリエディタを開き、\HKEY_CLASSES_ROOT\.js
を開きます。(規定)
の項目をダブルクリックします。
[文字列の編集]ダイアログが表示されます。値のデータが"JSFile"になっていますので、値をクリアします。設定後ダイアログボックスの[OK]ボタンをクリックしてダイアログを閉じます。
マシンを再起動すると、アイコンが新しいデザインに変わります。
VisualStudio.js.* のキーを検索すると \HKEY_CLASSES_ROOT\VisualStudio.js.*
のキーが見つかります。
このキーの子キーのDefaultIcon
にアイコンが設定されています。 msenvico.dll のリソースを参照しています。