2013年1月11日金曜日

FirefoxのHTMLアイコンを変更する

Firefoxの○○○なHTMLアイコンをIEのものに戻す方法です。

FirefoxのHTMLアイコンを元に戻す

○○○には素敵とか綺麗といった文字が入ります。

Officeをインストールしている場合は少し特殊になっているので、次回に載せたいと思います。

レジストリのキーを開きます。

HKEY_CURRENT_USER\Software\Classes\FirefoxHTML\DefaultIcon
HKEY_CURRENT_USER\Software\Classes\FirefoxURL\DefaultIcon

HKEY_CURRENT_USER\Software\Classes\FirefoxHTML\DefaultIcon 両方の既定値のデータがFirefox.exeへのフルパス,1になっていると思います。
(例 D:\Firefox\firefox.exe,1)
このデータを書き換えます。

IE9の場合

C:\Program Files\Internet Explorer\iexplore.exe,-19

C:\Program Files\Internet Explorer\iexplore.exe,-19

IE8の場合

C:\Program Files\Internet Explorer\iexplore.exe,-17

C:\Program Files\Internet Explorer\iexplore.exe,-17
%LOCALAPPDATA%\IconCache.dbを削除して再ログインします。

%LOCALAPPDATA% = C:\Users\ユーザー名\AppData\Localです。

HKCUをHKLMにすると全てのユーザーが対象になります。
Firefoxのインストーラーは両方に書き込むのでキー自体は元々存在します。
普通はHKLMのみか、どちらかを選択する場合が多いです。

%ProgramFiles%\Internet Explorer\iexplore.exe,-17 など環境変数を使う場合は、既定値を展開可能な文字列値(REG_EXPAND_SZ)にしないと一部のショートカットアイコンが正しく表示されません。


IE9のアイコン番号は17,19どちらでも同じです。
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\FirefoxHTML\DefaultIcon]
@="C:\\Program Files\\Internet Explorer\\iexplore.exe,-17"

[HKEY_CURRENT_USER\Software\Classes\FirefoxURL\DefaultIcon]
@="C:\\Program Files\\Internet Explorer\\iexplore.exe,-17"


これは一見、簡単そうなのですが何回も行き詰まりました。

まずインターネットショートカットはURLが記載されているだけで、Windowsならどんなアプリケーションで作ろうとも、どこから見ても同じだと思い込んでいたのが迷宮の入り口。

Firefoxのロケーションバーからドラッグして作成したショートカットは基本的な部分は同じでも設定されるパラメーターがIEと異なっています。
特にショートカットアイコンはIconFileで設定されProfiles\shortcutCache\に保存されていますのでIEと全く同じにはなりません。
おそらくアイコンの大きさに対して小さい絵柄が中央に表示されると思います。

次に、Officeをインストールしている環境ではhtmlアイコンを表示する過程が大きく異なるということです。
これは次回に書きたいと思いますが、今回の変更では表示されません。
変更できるはずなのに反映されないので、ずいぶん困りました。