アイコンを手動で(つまり、エクスプローラーの[フォルダーオプション]ウィンドウからではなく)置き換えている場合、アイコンが更新されません。たとえば、このバッチコードを実行すると、次のようになります。
REG ADD HKCR\testfile\DefaultIcon /ve /d "C:\test.ico,0" /f
アイコンは[フォルダオプション]のリストに表示されているとおりに表示されますが、デスクトップまたはエクスプローラでは更新されません。
任意のファイルタイプの[アイコンの変更]ボタンを押して[フォルダオプション]ウィンドウを終了すると、アイコンが更新されます。しかし、私が知る限り、これはバッチまたはVBSを介して行うことはできません。
explorer.exeを再起動しても機能しますが、そうすると、タスクバーのアプリケーションタブが何らかの理由でバグになります(たとえば、アプリケーションが最大化されている場合、タスクバーのタブを左クリックして最小化することはできません)もう-私は実際にそれを右クリックして最小化を押す必要があります...)。言うまでもなく、そのようにすると、開いているすべてのエクスプローラウィンドウが閉じてしまい、少し面倒です。
アイコンキャッシュをリロードするオプションがあるTuneUpUtilitiesのコピーもありますが、これは意図したとおりに機能します。しかし、繰り返しになりますが、バッチまたはVBSを介してこのツールにアクセスすることはできません。また、explorer.exeを再起動したり、ファイルを削除したりすることはありません(一部のソリューションのように)。OSドライブのどこにもiconcache.dbファイルがないので、私はこれに前向きです。
代わりにVBSを介してレジストリエントリを追加しようとしましたが、それは役に立ちませんでした。
バッチまたはVBScriptソリューションは大歓迎です!