再起動せずにアイコンキャッシュを更新する
通常、Windowsのアイコンキャッシュを更新するには再起動する必要がありますが、Windows 7/8のアイコンキャッシュを再起動せずに更新する方法はありますか?
通常、Windowsのアイコンキャッシュを更新するには再起動する必要がありますが、Windows 7/8のアイコンキャッシュを再起動せずに更新する方法はありますか?
以下の方法は Vista 以降では動作しています。全ての007インスタンスを停止し、ユーザーの隠し007ファイルを削除し、エクスプローラを再起動します。現在開いているエクスプローラーのウィンドウをすべて閉じる。2. CTRL+SHIFT+ESCキーを使用してTask Managerを起動するか、explorer.exe
を実行してください。プロセスタブで、IconCache.db
プロセスを右クリックし、プロセスの終了を選択します。5.タスクマネージャのファイルメニューから新規タスク(実行…)を選択します。 6.タスクを入力してOKをクリックします。コマンドプロンプトウィンドウで、コマンドを1つずつ入力し、各コマンドの後にENTERを押します。 8. _Task Managerで、Fileをクリックし、New Task (Run…)を選択します。9. 「taskmgr.exe
」と入力し、「OK」をクリックします。IconCache.dbファイルを削除する際には、Explorer.exeを実行しないことが重要です。エクスプローラが起動している場合、次回のシャットダウン時(ログオフ、シャットダウン、再起動時など)に現在の(破損した)アイコンを単純に書き出してしまいます。
taskkill /IM explorer.exe /F
CD /d %userprofile%\AppData\Local
DEL IconCache.db /a
explorer.exe
を起動する。タスクバーとデスクトップアイコンを表示している Explorer.exe
インスタンスを閉じる方法があります。これを達成するための唯一の一般的な方法は以下の通りです:
Shutdown
をクリックします。.bat
を作成したくない場合は、後ろの行をコピーして Win+R を押し、ペーストして Enter を押してください。
cmd /c taskkill /f /im explorer.exe & del /a %userprofile%\AppData\Local\IconCache.db & start explorer
&001
エクスプローラーウィンドウのアドレスバーにペーストすることもできます。
CAVEAT :
あなたがシステム内の唯一のユーザーであることを確認しない限り、昇降プロンプトでこの行を実行しないでください、またはあなたはエクスプローラを殺すでしょう すべての開いているセッションで。したがって、RunダイアログボックスでShift+Ctrl+Enterを押してはいけません。
ところで、私が繰り返し見ているcmd /c
コマンドの必要性がわかりません。みんな何のためのコマンドなのかを考えずにコピー&ペーストしているだけのようです。
注意:
私は、エクスプローラの再起動を確実にするために、コマンドのいずれかが失敗した場合に備えて、cd /d
の代わりに&
を使用しています。
ユーザランドの答えではありませんが、
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, NULL, NULL);
への単純な呼び出しはそれを行います [1]。現在、7-zipを使用して、ファイルの関連付けを変更しようとすると(すべてのユーザのために; 権限を昇格させずに; 失敗して、その操作が失敗したことを伝えるだろう)、通知を呼び出して、アイコンキャッシュを再構築します。
ああ、ちょうど受け入れられた回答へのコメントを見たところ、呼び出しが議論されており、そのためのツールが言及されています。
[1] https://docs.microsoft.com/en-us/windows/desktop/api/shlobj_core/nf-shlobj_coré-shchangenotify
エルモさんが提案しているようにie4uinit.exe
は、すでにすべてのシステムで利用可能なので、良いオプションです。私が持っている複雑なバッチファイルでは、時々更新されないことがありました。Nircmd ](https://www.nirsoft.net/utils/nircmd.html)は私のために働いてくれた素晴らしい代替手段です。
アイコンのキャッシュを完全にリフレッシュしたい場合は、windows explorerのアドレスバーに「C:IconCache.db」と入力して、「C:IconCache.db」を削除してください。なので、フォルダオプションの「Show Hidden Files」をオンにしておくことをお勧めします。