Windows8/8.1で、アイコンが正しく表示されない場合の対処方法

Windows7からWindows8/8.1に切り替えてみました。
色々地獄を見ましたが、とりあえず使えるようになりました。

使えるようになったので、いつのまにか幾つか白表示になっていたデスクトップアイコンを正しい表示に直してみることにしました。

『アイコン表示がおかしくなるのはIconCache.dbが壊れているからで、それを削除しPCを再起動することでIconCache.dbが再生成される』とのご宣託があちらこちらに書いてあります。
ところがIconCache.dbを削除して再起動してもアイコンは白表示、つまり壊れたままです。

そこでもう少し深く調べてみました。

”「アイコン表示がおかしい - Microsoft Answers抜粋」
アイコンキャッシュはメモリ上にあります。
起動時にExplorer.exeは、まずIconCache.dbから必要なデータを読み込み、そこに無いものは元ファイルを参照します。読み込まれたアイコンデータはメモリ上にキャッシュされます。
アイコン表示がおかしくなるのはIconCache.dbが壊れているからと推測され、それを削除しPCを再起動することでデータベースファイルが再構築されるとの解説をよく見かけます。
ところがIconCache.dbを削除しても、まだキャッシュメモリ上に壊れたアイコンデータが残っています。
IconCache.dbが削除されて見つからない場合、ログオフ時にこれらはすべて差分として書き戻され、新たに壊れたデータの入ったIconCache.dbが作成されてしまいます。”

なるほど、それでIconCache.dbを削除してもダメなのか!
対処方法は、『画面のプロパティから画面の色を一旦変更…』とあります。
画面のプロパティは弄りたくないなということで、以下の方法で対処してみました。

・IconCache.dbを削除し、空のIconCache.dbを作成し、さらにプロパティで読み取り専用に設定。
・ログアウト/ログインする。
(ログオフ時、キャッシュメモリ上に壊れたアイコンデータを差分として書き戻しするが、IconCache.dbは読み取り専用なので書き込めない。ログオン時、IconCache.dbが空なので元ファイルを参照してアイコン表示するので正しく表示される。)
・空のIconCache.dbの読み込み専用を解除する。
(次のログオフ時はキャッシュメモリ上の正しいアイコンデータがIconCache.dbに書き込まれ、次のログインでは正しいIconCache.dbが読み込まれ、アイコンは正しく表示される。)

上手くいったようです。