Windows10 サムネイルキャッシュの削除を止める

投稿日:2018/3/12 更新:2019/3/22 コメント 2件 Windows , ,


前置き

2017年7月8日にサブ機のWindows 10 Pro Creators Update(ビルド:1703)に移行させてからエクスプローラーで表示されるサムネイルキャッシュが削除される問題に関してあまり意識してなかったというか、サムネイル表示に関してあまりストレスを感じてなかったので何もしてませんでした。

サブ機のWindows10Proのライセンスをメイン機に移動させてみた!

ところが先日、ポリアモルフィズムというサイトの方が以前書いた記事を参考(ピンバック)にされたのを機にサムネイルを大量に生成させてみたらキャッシュが削除されてたのでWindows 10環境下でもサムネイルキャッシュを削除されないように設定し、ついでにサムネイルキャッシュデータについてもちょっと調べてみました。

 

Creators Update(ビルド:1703/RS2)環境のままアップデートを延期(Windows 10 Proは最大365日まで延長可)しているので最新版のFall creators  Update(ビルド:1709/RS3)ではないですし、大型アップデートを行うと初期化されたり、仕様が変わって効果がない可能性があります。また、不明な点も多いですし、レジストリを弄るので試される方はエクスポート(バックアップ)をとって自己責任でお願いします。

 




サムネイルキャッシュの保存場所

Windows10のサムネイルキャッシュのデータは下記アドレスの「Explorer」フォルダの中に下記のいずれかのデータベースファイルに保存されるようです。

C:\Users\●●●\AppData\Local\Microsoft\Windows\Explorer

Windows10ではWindows7には無かったthumbcache_16.db、thumbcache_48.db、thumbcache_768.dbがあり、より細かく分類されているようです。

Windows 10のデータベース Windows 7のデータベース
thumbcache_16.db
thumbcache_32.db thumbcache_32.db
thumbcache_48.db
thumbcache_96.db thumbcache_96.db
thumbcache_256.db thumbcache_256.db
thumbcache_768.db
thumbcache_1024.db thumbcache_1024.db

余談ですが下記の文字列をエクスローラーのアドレスバーに貼り付けてEnterキーを押すと瞬時に移動できます。

%LOCALAPPDATA%\Microsoft\Windows\Explorer

 

 

thumbcache_xxxの中身を見る

以前の記事でも書きましたが「THUMBCACHE VIEWER」と言うソフトのアイコンにthumbcache_256.dbなどのファイルをウィンドウ内にドロップするとサムネイルキャッシュデータのデータサイズなどの詳細を見ることができます。拡張子がbmp,png,jpgなどとあったのでサムネイルキャッシュ画像のファイル形式は元の素材と同じものになるようです。

行をクリックすると実際のキャッシュ画像を見ることもできますし、タイトルバーで画像サイズを確認することもできます。透過情報を持っている画像(PNGなど)ではそれを保持したままのサムネイルが作成されるようです。

「FIle」メニューからCSV形式で出力することも出来ますし、「Save All」などから画像を保存することも出来ます。iconcache_xxx.dbには画像化されたアイコンが保存されていたのでそれらの画像を一気に抽出することも可能です。更に詳しいは下記のページ(英語)に記載されています。

Windows Explorer Thumbnail Cache database format specification

尚、このソフトを使うには「Microsoft Visual C++ 2008 Redistributable Package」が必要だそうです。

 

 




キャッシュデータの振り分け

Windows10でサムネイル表示できる表示形式は特大アイコン、大アイコン、中アイコン、並べて表示、コンテンツの5種類あります。

THUMBCACHE VIEWERで表示方法によって生成されるサムネイルキャッシュを調べてみたところ、以下のような感じで振り分けられていました。正しいかどうかは分かりませんが表示方法によって特定のデータベースに保存されるという訳ではなく生成されたサムネイルのファイルサイズ(容量)によって振り分けられているようです。

表示方法 データベースファイル
コンテンツ thumbcache_32.db
並べて表示 thumbcache_48.db
中アイコン thumbcache_48.db
大アイコン thumbcache_96.db,thumbcache_256.db,
thumbcache_768.db,thumbcache_1280.db
特大アイコン thumbcache_256.db,
thumbcache_768.db,thumbcache_1280.db

また、サムネイルキャッシュの画像サイズも特大アイコンサイズがMAXだと思っていましたが作成されたキャッシュ画像を見ると1280×720などのかなり大きなサイズのものまであったりしてなんかよく分からないですね。

 

 

サムネイルキャッシュデータの削除

サムネイルキャッシュされたデータはディスククリーンアップ(「ファイル名を指定して実行」→「cleanmgr.exe」を実行)にある「縮小表示」を削除(リセット)することができます。

削除すると一時的に「Explorer」フォルダに「ThumbCacheToDelete」というフォルダが作成されてそちらにキャッシュファイルが一時的に移動され、OSを再起動すると削除されるようです。このフォルダはフォルダオプションで「保護されたオペレーションシステムファイルを表示しない(推奨)」にしないと見えません。

リセット後のキャッシュデータの初期値は以下のような感じでした。

 

 




「SilentCleanup」タスクで削除されるサムネイルキャッシュを停止する

ここからが本題です。Windows7の場合は「Explorer」フォルダのセキュリティ設定を弄る必要がありましたがWindows10の場合はWindow7のやり方ではできなかったので今回はやらずに「SilentCleanup」というタスクでサムネイルキャッシュが削除されるのをレジストリで停止させてみました。

SilentCleanupタスクの削除対象からサムネイルキャッシュデータを除外する

regeditを起動させます。

コンピューター\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Thumbnail Cache

「Thumbnail Cache」フォルダを選択します。

「Autorun」→「修正」と選択します。

すると「DWORD(32ビット)値の編集」画面が表示されるので「値のデータ」を「1」から「0」に変更してパソコンを再起動します。

 

 

サムネイルキャッシュの上限値を変更する

結論から言うと上記の方法だけで一応勝手にキャッシュが削除される問題は停止できたようです。ただ、大量の画像と動画のサムネイルを作成したら、thumbnail_256.dbのサムネイルキャッシュのデータが512,000KB(約500MB)を上限に増加しなくなったのでサムネイルキャッシュの上限値はWindows10でもやはり存在するようです。

ただ、上限になった場合に古いキャッシュが削除されるのか、それとももう作成されないのか、はたまた別のデータベースに保存されるかはその辺はまったく分からないですが他のサイズのデータベースの容量が増加していたようなのでもしかしたら余裕があるデータベースに保存されるのかも知れません。因みに関係あるかどうか分かりませんがシステムドライブの容量は約240GBのSSDです。

サムネイルキャッシュデータをリセットしてほぼ全ての動画ファイルとよく使用する画像ファイルを「大アイコン」のサムネイルキャッシュを作成したら以下のような感じになったのでthumbcache_96.dbだけ増加させてみました。

「HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion」を開いて「ThumbnailCache」がない場合は「CurrentVersion」が選択された状態で右クリックして「新規」 → 「キー」と進みます。

キー名を「ThumbnailCache」に設定してキー(フォルダ)を作成します。

「ThumbnailCache」を選択して「新規」 → 「DWORD (32 ビット) 値(D)」と進み、名前を「MaxCacheFileSize96」と設定します。

「MaxCacheFileSize96」を選択して右メニューから「修正」と進み、「表記」を「10進数」にしてから「値のデータ」を入力します。値についてはよく分からないですが取り敢えず「50000」にしました。

設定後の画像です。

設定後にキャッシュを大量に作成したところ、thumbcache_96.dbのデータサイズは2GBを超えても削除されなくなりました。

サムネイルを寝ている間にキャッシュさせる方法

 

 

おまけ

サムネイルに関して不思議な現象がありました。それはサムネイルキャッシュが作成されたファイルを詳細表示から大アイコン表示に変更するとサムネイルが作成されるような動作が行われることがありました。ただ、一度上の階層に移動して再度表示するとサムネイルは普通に表示されます。要はサムネイルキャッシュデータがあるにも関わらず新規にサムネイルを作成しようとする訳です。

発生状況はサムネイルキャッシュを作成する時に動画や画像が保存されているフォルダを直接表示されてからサムネイルキャッシュを作成した訳ではなく、最上位フォルダを開いて「*.mp4」や「*.jpg」などの検索結果を表示させた状態で大アイコンのサムネイルを作成させていました。なので実体が保存されたフォルダを最初に開いて詳細表示から大アイコン表示に変えた場合にこのような挙動が現れるようです。Windows7の時はそのようなことはなかったような気がしたんですが記憶が定かではありません…。

 

参考サイト:

Windows10でサムネイルキャッシュを削除させずにエクスプローラーで高速に縮小表示する

 

2 件のコメント

  • どうも。
    サムネイルビューワー・表示してなるほどと感心しました。
    サムネイルをいちいち作り出すOSの動作を悪用してあるサイトのアクセスでブラウザクラッシュに関係しているのではないかと勘繰りましたが、いまだに根拠がつかめません。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です