2011年03月05日

アイコンキャッシュ削除、正しい再構築

アイコンキャッシュ削除、年に一度は正しい再構築
◆ Win7/Vista/XP 共用のアイコンキャッシュ削除を考えてみた。
,
---Win7/Vista/XP--- IconCache 削除とログオフ.bat------------
@echo off
cd %userprofile%\Local Settings\Application Data
cd %userprofile%\AppData\Local ------------------WinXP専用ではこの行不要
del IconCache.db /a
echo ◆--------------------------------------------------------◆
echo ◆     アイコンキャッシュ削除しました        ◆
echo ◆◆                          ◆◆
echo ◆◆◆!必ず画面の色(ビット)を変更し元に戻して下さい!◆◆◆
echo ◆◆                          ◆◆
echo ◆     次は自動ログオフ→ログオンです        ◆
echo ◆--------------------------------------------------------◆
desk.cpl
pause
,
shutdown /l
---------------------------------------------自己責任で-----
,
通知領域タスクトレイのワイヤレスネットワーク接続のアイコンが、接続出来ているのに
未接続や取得中の表示の場合、このアイコンキャッシュ再構築が効果ある。
XPでは一回で1MB程度になるが、Win7では増えていく。Win7で1MB程度にする方法は、
IconCache.dbをメモ帳で開き、空にして、読み取り専用にする。ログオフ→ログオン
IconCache.dbの読み取り専用を解除して、画面の色(ビット)を変更し元に戻す。
ログオフ→ログオン -------これをbatファイルで考えてみた
,
---Win7/Vista/XP--- IconCache 再構築1/2.bat---------------
@echo off
cd %userprofile%\Local Settings\Application Data
cd %userprofile%\AppData\Local
del IconCache.db /a
type nul > IconCache.db
attrib +r IconCache.db
shutdown /l
------------------------------------------------------------
---Win7/Vista/XP--- IconCache 再構築2/2.bat---------------
@echo off
cd %userprofile%\Local Settings\Application Data
cd %userprofile%\AppData\Local
attrib -r IconCache.db
echo ◆----------------------------------------------------◆
echo ◆◆!必ず画面の色(ビット)を変更し元に戻して下さい!◆◆
echo ◆                          ◆
echo ◆     次は自動ログオフ→ログオンです      ◆
echo ◆----------------------------------------------------◆
desk.cpl
pause
,
shutdown /l
---------------------------------------------自己責任で-----

◆ログオフ自動ログオンの設定---詳細は[ログオフ自動ログオン、レジストリ反映]
 regedit 
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
右側新規[文字列値][ForceAutoLogon]を追加し、値を[1]に設定
右側新規[文字列値][AutoAdminLogon]を追加し、値を[1]に設定
右側新規[文字列値][DefaultUserName]を追加し、ユーザ名を入力
右側新規[文字列値][DefaultPassword]を追加し、パスワードを入力→ログオフ、ログオン
,
ついでにログオフのショートカットを作る
デスクトップで右クリック、[新規作成][ショートカット]
[shutdown /l]と入力し名前を例[ログオフ自動ログオン]とする、アイコン変更等
,
◆アイコン表示がおかしい/直せない - Microsoft Answers
概説抜粋
アイコンキャッシュはメモリ上にあります。
起動時にExplorer.exeは、まずIconCache.dbから必要なデータを読み込み、そこに無いものは
元ファイルを参照します。読み込まれたアイコンデータはメモリ上にキャッシュされます。
,
アイコン表示がおかしくなるのはIconCache.dbが壊れているからと推測され、それを削除し
PCを再起動することでデータベースファイルが再構築されるとの解説をよく見かけます。
ところがIconCache.dbを削除しても、まだキャッシュメモリ上に壊れたアイコンデータが
残っています。
IconCache.dbが削除されて見つからない場合、ログオフ時にこれらはすべて差分として
書き戻され、新たに壊れたデータの入ったIconCache.dbが作成されてしまいます。
,
操作抜粋
1. IconCache.dbを削除
2. アイコンキャッシュを再構築するために、画面のプロパティから画面の色を一旦変更し、
改めて元に戻します。
この時IconCache.dbは無いので、データはすべて元のファイルから読み込まれます。
IconCache.dbを削除せず、この作業を行うと、ファイルが更新されない。
3. PCを再起動します。
ログオフ時にアイコンキャッシュから新しいIconCache.dbが作成され、再起動後から
参照されるようになります。
,
尚、このメモリ上にキャッシュされたデータは、ログオフのタイミングでIconCache.dbに
差分があれば追加保存され、次回起動時から利用されます。
すなわち、Explorer.exeがアイコンを描画するときは、
メモリ上のアイコンキャッシュ→IconCache.db→元のファイルの順にデータを探すわけです。
起動時には当然メモリ上のキャッシュが空なので、まずIconCache.dbを参照します。
,
.curファイルのアイコン表示がおかしい/直せない - Microsoft Answers
http://answers.microsoft.com/ja-jp/windows/forum/windows_7-files/cur%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E3%82%A2%E3%82%A4%E3%82%B3%E3%83%B3%E8%A1%A8%E7%A4%BA%E3%81%8C%E3%81%8A%E3%81%8B%E3%81%97%E3%81%84%E7%9B%B4%E3%81%9B%E3%81%AA%E3%81%84/84376eaa-4d65-420c-9d55-c175d6fe90a7
,
◇Win7 アイコンキャッシュ年に一度は再構築
Windows 7は管理構造を変更し、一般的に搭載される物理メモリ容量も拡大したため、
「肥大化したアイコンキャッシュ情報は、GDIリソースを含むシステムリソースをひっ迫する」
場面に出会うことはほぼありません。
ただし、アイコンキャッシュロジックは、Windows 7でも使用されています。
Windows 7のアイコンキャッシュは、「%userprofile%\AppData\Local\IconCache.db」として
格納されている
年に一度はアイコンキャッシュを再構築すべきでしょう。
具体的にはアイコンキャッシュファイルを削除し、Windows 7を再起動すれば操作完了。
下記のコマンドを順番に実行するか、バッチファイルを作成して実行しましょう。
cd /d %userprofile%\AppData\Local
del IconCache.db /a
shutdown /r /t 0
,
【ハウツー】レッツ! Windows 7 - トラブルシューティング編(2) マイコミジャーナル
http://journal.mycom.co.jp/articles/2010/02/02/w7/index.html
,
◇Vista explorer.exe による アイコンキャッシュに問題
アイコンキャッシュはユーザごとに隠しファイルとして保存されています。
このファイルに不整合が生じているためにアイコン表示が正しく行われません。
%LOCALAPPDATA%\iconcache.db
キャッシュであるため、このファイルを削除してもWindows起動時に生成されます。
そのため、このファイルを削除して再生成させることがアイコンの修復になります。
しかしそこには落とし穴があります。Web上の解説ではそれが抜けているために修復されません。
アイコン修復方法
explorerによるお節介をさせなければよいだけです。
explorerを停止
アイコンキャッシュ・ファイルを削除
explorerを起動
具体的には「管理者権限」で以下を実行。操作は「コマンドプロンプト」で行います。
taskkill /F /IM explorer.exe
cd %LOCALAPPDATA%
attrib -h iconcache.db
del iconcache.db
explorer.exe
,
To repair Icon
http://einstlab.web.fc2.com/Tips/ResetIcon.html
,
◇アイコンが変(Vista)以下、修復方法
1. コマンドプロンプトを管理者として実行
2. cd %UserProfile%\AppData\Local(カレントディレクトリ変更)
3. attrib -h IconCache.db(属性変更)
4. del IconCache.db(削除)
5. マシン再起動
エクスプローラで全てのファイルを表示する設定にしていれば、当該フォルダに
このIconCache.dbが表示され、削除もできるように見えるが、
Windowsのリソース保護機能により(たぶん)次回起動時に元に戻される
(実際エクスプローラ上で削除し再起動してみたが、アイコンは直らなかった)
なので管理者権限のプロセスから消しにかかっているんだと思う。
,
mickyにおける思考: アイコンが変(Vista)
http://eijimiki.blogspot.com/2008/01/vista.html
,
◆IconCache.dbという名前のファイルを作成 Win7
要するに、IconCache.db を削除するだけではだめで、新規に同名の空ファイルを作る
必要があるようだ 試したところ一発で直った
新規作成はとりあえずテキスト文書で、それをRenameすればOK
一応読み取り専用にチェックはしておいたが、たぶんその辺は勝手に正しくなると思う
原文「IconCache.dbを削除、IconCache.dbという名前のファイルを作成しRead Onlyに
する(Read Onlyでないならば、キャッシュはリセットされません)
再起動してIconCache.dbファイルのRead Onlyを取り除いてください」
,
Win7 アイコンキャッシュ2 ≫ I am Pen Jr.
http://pen-jr.org/blog/wp/?p=1469
Fix Blank or White Shortcut Icons on Desktop ≫ My Digital Life
http://www.mydigitallife.info/2009/04/24/fix-blank-or-white-shortcut-icons-on-desktop/
,
◆XPでの設定---詳細は[PC小技集34]
1.regedit
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer
右側新規[文字列値][Max Cached Icons]を追加し、値を[1024]に設定→PC再起動
[Max Cached Icons]の値のデータ範囲は[100〜4096] デフォルト[512](KB--XPは個数説)
(パフォーマンス優先はできるだけ小さく、安定性を求めたい場合は大きく)
2.アイコンキャッシュIconCache.db削除
3.画面の表示色を変更し元に戻す→ログオフ→ログオン
,
◆Max Cached Icons サイズ(the number of icons cached )
最近の情報では個数で1024--8192の模様。適正値は不明。Microsoft推奨値は2000
?When doing research on this registry setting, I found various opinions as to
?the proper file size with "recommendations" for setting the value to anywhere
?from 1024 to 8192.
?2000 is the value recommended by Microsoft to increase performance.
Change the icon cache size in Windows XP Pro | TechRepublic
http://www.techrepublic.com/article/change-the-icon-cache-size-in-windows-xp-pro/5164407
,
◆Win7/VistaでのMax Cached Iconsの設定はレジストリともXPと同様らしい
,
◆ファイルの新規作成、ファイルの内容を消去、ファイルに内容を追加
△ファイルの新規作成を行う
[ファイル名]のファイルが元々存在しない場合、
echo [任意の文字列] > [ファイル名] Enter
で内容が[任意の文字列]であるテキストファイルを[ファイル名]で作成することが
できます。もちろん、
echo $[変数] > [ファイル名] Enter
で、変数の値の記述されたテキストファイルを作成することができます。
従って引数である[任意の文字列]や$[変数]を省略し、
echo > [ファイル名] Enter
とすれば、空白のテキストファイルを作成することができます。
新規ファイルの作成は、この他に touch コマンドによる方法もあります? 。
,
△ファイルの内容を置き換えたり消去したりする
[ファイル名]のファイルが存在している場合、
echo [任意の文字列] > [ファイル名] Enter
で、[ファイル名]のファイルの内容が[任意の文字列]で置き換わります。もちろん、
echo $[変数] > [ファイル名] Enter
で、ファイルの内容を変数の値に置き換えることができます。
従って引数である[任意の文字列]や$[変数]を省略し、
echo > [ファイル名] Enter
とすれば、既存のファイルの内容を消去することができます。
,
△ファイルに内容を追加する
[ファイル名]のファイルが存在している場合、
echo [任意の文字列] >> [ファイル名] Enter
echo $[変数] >> [ファイル名] Enter
で、元のファイルの内容の末尾に、[任意の文字列]や[変数]の値を追加することができます。
,
[object]◇初心者のためのLinuxサーバー構築講座☆お便利.com☆
http://www.obenri.com/_command/echo01.html
,
△Windows のコマンドプロンプトで空ファイルを作成する方法
type nul > 任意のファイル名
というのが汎用性に優れており且つ Windows ならばまず確実に成功する方法っぽいです。
copy nul 任意のファイル名
も汎用性が高く有効っぽいです。機種依存する方法としては他に
rem > 任意のファイル名 (コメント文の実行結果をファイルに保存する手法。
全体をコメントとして解釈されてファイルに保存されないものがある)
echo -n > 任意のファイル名 (改行無し指定の空エコーをファイルに保存する手法。
このオプションが使えないものがある)
,
Reread : Windows のコマンドプロンプトで空ファイルを作成する方法
http://text.readalittle.net/article.php?id=244
,
[アイコンキャッシュ削除、正しい再構築]---2011/03

posted by 丹波yu at 17:47 | PC便利法 | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。