サムネイルキャッシュが一定容量を超えるとゼロクリアされます

Anonymous
2009-11-28T20:31:34+00:00

Win7 HP 64bitです。アップグレード版、VISTA HP 32bitの上にクリーンインストールしました。

私はデジカメ趣味なので画像ファイル(元はRAWファイル(NIKON NEF形式)ですが観賞用はJPEGファイルに変換)を数多く保有しており、フォルダを細分化して保存しています。フォルダは96pixelの「大きなアイコン」表示としており、サムネイル表示されます。初回に開いた時はサムネイルが上からパッパッと順次表示されますが、それはキャッシュされますので次回以降は一瞬で表示され快適です。しかし時々キャッシュがゼロクリアされるため、2回目以降であっても再度サムネイル表示をし直すという現象が発生しています。

WinXPの頃はフォルダごとに Thumb.dbファイルが作成されていましたが、Win7ではそれがなく、調べたら、

C:\Users\ユーザー名\AppData\Local\Microsoft\Windows\Explorer に、一括保存されていることが分かりました。ファイル名はサイズ毎に決められており、デフォルトでは thumbcache_32.db、thumbcache_96.db、thumbcache_256.db、thumbcache_1024.db の4ファイルです。同じフォルダ内に、thumbcache_idx.dbなど複数のファイルもあります。

大きなアイコン表示なので、キャッシュが蓄積されると thumbcache_96.dbの値が増加してゆきますが、経験的に 500MBほどを超えると、何らかのきっかけでこれらがゼロクリアされ、再度 1KBに戻ってしまいます。そうなるとフォルダを開いたときにサムネイルキャッシュを一から作り直すこととなります。

そのため容量の上限規定があるのかとレジストリを調べたら、

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ThumbnailCache

の中に同様に、MaxCacheFileSize32、MaxCacheFileSize96、MaxCacheFileSize256、MaxCacheFileSize1024の4キーがあり、通常設定は DWORD値「0」となっていました。

そこで実験的にいずれも DWORD値を「2000000000」 (2GB ? と推定)に変更してみました。

そうするとキャッシュは800MBくらいまで増え続けますが、それを超えるとやはりゼロクリアされてしまいます。

サムネイルキャッシュの上限値の設定方法をご存知の方がいらっしゃれば、ご教示いただきたくお願い致します。

WEBなど色々調べましたが、これに対する解は見つかりませんでした。また、VISTAの時はこの問題はなく、意識していませんでした。

家庭向け Windows | 以前の Windows バージョン | ファイル、フォルダー、ストレージ

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

45 件の回答

並べ替え方法: 新しい順
  1. Anonymous
    2012-07-22T19:36:17+00:00

    検証していただけたら幸いです。

     ソフトはGomEncoderという動画変換ユーティリティですNETでGomPlayerのダウンロードページから落として有料の拡張版を使用してます。

     ソフト起動後に変換ファイルを指定するときにサムネ(縮小表示をしなければリセットされないこともありますが、にたりよったりのファイル名で縮小表示で指定してしまいます

    Explorerで開いてドロップすればいいのですがつい追加オプション使用するのでリセットされてしまいます。 

    原因は追加するという(ファイルを開く)時 ※(Explorerに類似した窓で縮小表示を新たに作成する) のが原因でしょう ※を作成するソフトはいっぱいあるので殆どのソフトでリセットされるかもしれません。

     あまりにもPCに疎い私の相談に答えてくださって感謝しています。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2012-07-22T17:35:44+00:00

    こちらでもキャッシュがリセットされるか確認したいので、もしよろしければお使いの動画変換のソフトの名前を教えていただけないでしょうか?

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2012-07-22T17:03:33+00:00

    Unjash2さんのアドバイスのおかげで本当に助かりました有り難う御座います。

    早速ご指摘3項目試し Cドライブ(SSD)以外のドライブに作ることができました。 

     他の事(サムネのリセット)は、10日程前のセキュリティのシステムを拒否することで改善されたように感じたのですが(ドローソフトでは改善されていた) 動画変換のソフトでリセットされました。そこでサムネをキャッシするファイルを他のフォルダにコピーしといてリセットされたらLocationのフォルダ指定を変更してまともに縮小表示をできてる元の状態にしています。 もしソフトウェアのファイルを開く による強制リセットが起こらない方法があればと 次々に頭を痛める悩みは増えてます。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2012-07-20T22:48:25+00:00

    探して見つからなくても新規に作成すればOKです。方法を以下に示します。

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion

    を開き、CurrentVersionにカーソルを合わせ右クリック→新規→キーでThumbnailCacheを作成してください。

    次に、作成したThumbnailCacheを開いて右クリックから以下の名前のDWORD値を作成してください。

    MaxCacheFileSize32、MaxCacheFileSize96、MaxCacheFileSize256、MaxCacheFileSize1024

    この中のMaxCacheFileSize256が縮小版のサイズです。

    値のデータは適当な大きさに設定してください。

    これでもうまくいかなければ、ThumbnailCacheに以下の名前のDWORD値も作成してください。

    MaxPercentageOfFreeSpaceForRebalancing

    値のデータは10進数で1000にしてください。この値はどうやらキャッシュフォルダが存在するディスクの空き領域に対するキャッシュサイズの割合の最大値を示しているようです。デフォルトでは1(0.1%)になっていると思います。デフォルトの場合、ディスクの空き容量が500GBのとき、キャッシュサイズの最大値は500MBとなります。

    設定したら再起動してください。

    もし、これでもうまくいかなければ、Cドライブより容量の大きいディスクにキャッシュの場所を移動してください。方法を以下に示します。

    1. キャッシュを作成したい場所に適当なフォルダを作成する。
    2. ThumbnailCacheに文字列値としてLocationを追加し、値のデータに1.で作成したフォルダのアドレスを入力する。(アドレスにスペースが含まれる場合はダブルクォーテーションを最初と最後に挿入する)

    また、他のソフトによるリセットですが、私の場合は CCleanerというソフトを使っていて、「サムネイルキャッシュ」にチェックを入れたままクリーンアップを行なっていたため頻繁にキャッシュがリセットされていました。チェックを外したところ当然ですがリセットされなくなりました。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  5. Anonymous
    2012-07-20T18:45:40+00:00

    前回試みたCドライブのユーザー・・・Explorerのプロパティでの拒否操作で他のソフトによるリセットはなくなったものの、やはり縮小表示の量が増えるとリセットされました。 前にも書いたのですがレジストリーのHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ThumbnailCacheも探しましたがThumbnailCacheが見つからないのでリセットされる値は変えられないので困ってます。 ご存知の方!教えてくださいお願いします。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません