ラベル 解決 の投稿を表示しています。 すべての投稿を表示
ラベル 解決 の投稿を表示しています。 すべての投稿を表示

2026年10月27日火曜日

技術メモ PNGファイルの画像サムネイル不表示の解決

 Technical Note: Resolving the Issue of Missing PNG Thumbnails


For the past six months, I had been struggling with an issue where image thumbnails for PNG files failed to display—but only on a 20TB hard drive I had added to my system. I finally decided to tackle the problem head-on with the help of ChatGPT, and after a full day of work—which involved several high-risk operations modifying the Windows Registry—I managed to resolve it. When the thumbnails finally appeared, I felt an immense sense of relief, as if a thorn that had been stuck in my throat was suddenly removed. It turned out that the issue had nothing to do with the quality of the hard drive itself, but was caused by an entirely different factor.


半年前から追加した20TBハードディスクだけPNGファイルの画像サムネイルが不表示となり、とても困っていました。今回、意を決してChatGPT支援で解決に挑み、丸1日かけて解決できました。レジストリをいじるリスクのある操作を繰り返しました。解決した瞬間には喉に刺さったトゲがとれた解放感を味わいました。疑ったハードディスクの品質ではなく全く別の要因でした。

1 PNGファイルの画像サムネイル不表示の不都合


PNGファイルの画像サムネイル不表示の不都合

半年前から追加した20TBハードディスクだけ次の不都合が生じます。

エクスプローラーでPNGファイル表示を大、特大にすると画像サムネイルが不表示となり、一般アイコン表示になる。そのファイルをダブルクリックすると画像サムネイルが表示されたり、されなかったりします。上記画面は1つのPNGファイルだけダブルクリックして表示しています。

画像サムネイルが表示されないと、スクショで作成した画像などを即座に選ぶことができないので、とても不便です。多数PNGファイルをいちいちプレビュー画面で確認するのはとても非効率です。

2 ChatGPT支援による解決策の探索

ChatGPT支援による解決策探索のステップを記録しておきます。

2-1 画像サムネイルを表示する方法があるか

次の確認をしてほしい。

1 Seagate HDDのファイルシステムはなんですか?→exFAT

2 PNGをCドライブにコピーするとどうなりますか?→クリックしなくてもサムネイルが表示される

3 サムネイルキャッシュの再作成はためしましたか?→試したが改善しなかった

2-2 次の確認をしてほしい。

1 Gドライブにペイントで新規保存したPNGは?→クリックするまで表示されなかった

2 PNGの既定アプリは?→Microsoft フォト

3 Gドライブのフォルダーを開いて1分程度待つと?→待っても表示されず、クリックすると表示される

2-3 次の確認をしてほしい

1 Gドライブ直下に新規フォルダーを作成してPNGをコピーすると?→やはりクリックするまで表示されない

2 別のWindowsパソコンで試せますか?→試せない

2-4 次の確認をしてほしい

1 ディスクの管理でGドライブの状態は?→オンライン・正常

2 PowerShellで確認したポリシーの値は?→すべて空欄、または未設定

3 一度クリックして生成したPNGサムネイルは?→フォルダーを開き直しても表示される

2-5 次の確認をしてほしい

1 表示を「詳細」→「特大アイコン」に変更し、F5を押すと?→改善しなかった

2 新しいWindowsローカルユーザーでは?→PNGがクリックせずに表示された

2-6 次の確認をしてほしい

1 フォルダーのリセット→改善しなかった

2 視覚効果の「縮小版を表示する」→すでにチェックが入っていた

3 Bags・BagMRUの初期化→改善しなかった

2-7 次の確認をしてほしい

1 レジストリに {E357FCCD-A995-4576-B01F-234630154E96} はありますか?→存在する

2-8 次の確認をしてほしい

1 元のユーザーの「(既定)」データ→{8AD5CECD-DF0D-41C3-BA21-1E22114CC73C}

2 新しいユーザーの同じキー→キーが存在しない

2-9 修復結果を教えて下さい

1 レジストリキー削除後の結果→改善した(PNGが自動表示される)

2 Google Drive for desktopを利用していますか?→利用していない

2-10 PNGサムネイル問題は解決しました!

3 メモ

上記10のステップでは、実際は詳しい説明があり、操作案内もとても具体的でした。別ユーザーとしてパソコンを操作したり、レジストリの一部を保存して削除するなどの危険な作業も心配することなくできました。

当初はこの20TBハードディスクは廉価で購入したので、それに起因する低品質が問題だと踏んでいました。しかし、結果としてレジストリのGoogle DriveのPNGサムネイルハンドラーの登録が原因でした。これを削除することにより、PNGサムネイル問題は完全解決しました。Google Drive for desktopは使用していないので、なぜGoogle DriveのPNGサムネイルハンドラーの登録がされていたのか、不明です。

喉から魚の骨のトゲがとれた解放感を味わいました。ChatGPTには感謝です。この解決策をweb情報検索とか、webでの相談とかで得ることはほとんど不可能だったように感じます。

20TBハードディスク購入にともなううっすらとした「失敗感」を払しょくでき、学習意欲が高まります。


問題解決した様子



……………………………………………………………………

【グッド&ニュー】(ブログ活動や生活・散歩中に思い浮かべた良い感情や考え、素晴らしいアイディアや注目すべき事柄)

書庫の中から次の図書を見つけてきました。

小林達雄監修【未完成考古学叢書】7「縄文土器の文様構造-縄文人の神話的思考の解明に向けて-」石井匠

小林達雄監修【未完成考古学叢書】8「縄文土器の文様生成構造と研究」今福利恵

未完成という文字と本題が超魅力的です。購入しただけで何故これまで忘れていたのか自分自身不明ですが、自分の縄文土器学習のよい栄養になりそうなので、手元において学習することにします。感想をブログ記事にしたいと思います。


2025年10月27日月曜日

技術メモ BlenderPythonの「Runtime Error:csvに列IDがありません」の解決

 Technical Note: Fixing BlenderPython's "Runtime Error: CSV file contains no column ID"


I'm using a BlenderPython script that plots CSV files containing data on tens of thousands of artifacts (IDs, xyz coordinates, and numerous attributes) as vertices in the Blender3D viewport within a second. However, the other day, I suddenly got the error "Runtime Error: CSV file contains no column ID," and was unable to plot. I've written a note about how to fix this.


数万遺物データを格納したcsvファイル(ID、xyz座標、多数の属性)を、Blender3Dビューポートに1秒以内に頂点としてプロットするBlenderPythonスクリプトを重宝して活用しています。ところが先日突然、「Runtime Error:csvに列IDがありません」が出て、プロットできなくなりました。その解決策をメモしました。

1 エラーの様子


遺物プロットに使っているBlender画面(2画面用にカスタマイズ、右端コンパートメントがBlenderPythonを記述したテキストエディター)

数万遺物データを格納したcsvファイル(ID、xyz座標、多数の属性)を、Blender3Dビューポートに1秒以内に頂点としてプロットできる優れモノのBlenderPythonスクリプトを毎日重宝して活用しています。ところが先日突然、「Runtime Error:csvに列IDがありません」が出て、プロットできなくなりました。csvファイルに異常は見つかりません。ID列は正常です。試しに列を入れ替えて、先頭列をxにしたところ、「Runtime Error:csvに列xがありません」が出てしまいます。

2 エラーの原因

ChatGPTに調査依頼してエラー原因を突きとめることができました。

BlenderPythonにおけるcsvファイル読込エンコードが encoding="utf-8"であるのに対して、csvファイルのエンコードが"utf-8-sig"であったので読み込めなかったのです。

自分はcsvファイルとExcelの間での文字化け回避などで"utf-8"と"shift-jis"の違いはいつも意識していたのですが、今回はじめて"utf-8-sig"というエンコードに直面して、エラー解決できなかったのです。"utf-8-sig"というエンコードのcsvファイルができたのは、2つのcsvフィアルを操作して1つの新しいcsvファイルを作成するPythonスクリプトをChatGPT支援で作った際に混入したことも判りました。

エラーとなったcsvをWZエディターで開き、文字コードを見ると、確かにUTF-8(BOM付き)になっています。


エラーとなったcsvファイルの文字コード

エンコード"utf-8-sig"のcsvファイルでは最初列名文字先頭に「BOM(Byte Order Mark)」という目に見えない文字(`\ufeff`)が入り、列名が\ufeffIDになり、スクリプトで指定した列名IDと異なり、エラーとなりました。

3 解決策

BlenderPythonスクリプトのcsvファイル読み込み部で、encoding="utf-8"をencoding="utf-8-sig"に修正して対処しました。これで"utf-8"のcsvファイルも"utf-8-sig"のcsvファイルも正常に読み込むことができます。

また原因がわかりましたので、同じエラーが類似BlenderPythonスクリプトで出た時は上記のように修正するか、csvファイルをWZエディターで読込み、"utf-8"に変更して書き出して使うことにします。