[ 新規に投稿する ]

検索して一覧作成でCtrl-L invalidのエラーが出るNo.11890
つばさ さん 23/10/20 12:06 [ コメントを投稿する ]
  いつもお世話になっております。

最近のバージョンで、検索して一覧作成を行うと、以下のエラーが出ます。

検索対象メール用ファイルの読み込みでエラーが発生しました(1)。Ctrl-L invalid
このエラーを繰り返す場合は「全般的な設定・上級者向け・デバッグ・デバッグ2」の「検索時のファイル読み込みでエラーが出る対策」または「その2」をONにしてみてください。

上記で指定されるオプションの「その2」の方をONにすると出なくなるのですが、速度に影響が出るということでできれば原因そのものを取り除きたいと考えています。

・Ver7.23、7.24の正式版で症状が出ることを確認しています。
・アカウントを2つ使っていますが、片方のアカウントでのみ発生します。
・Ver.7.19に下げると発生しなくなります。

何かユーザー側でできることはありますでしょうか。
よろしくお願いいたします。
[ ]
RE:11890 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11893
秀まるお2 さん 23/10/20 15:35 [ コメントを投稿する ]
   秀丸メールのVersion 7.19で出なかったエラーが最新版で出るようになった理由を調べてみたら、単純にエラーチェックを厳しくしたせいのようです。Version 7.19ではメール用ファイルの読み込成功かどうかのみ見てたのを、Version 7.20β3の時に、中身、特に先頭にあるはずのデータが正しいかどうかチェックするようにしました。

 ファイルの読み込みロジックは以前と同じなので、以前は間違ったデータで検索してたことになると思います。

 特定のアカウントでのみこのエラーが出る理由がちょっと分からないのですが、実はつい最近別のユーザー様からも同じ話が届いてはいました。なぜそのユーザー様の所で起きるのか、メールデータの保存場所について何か特徴的なことが無いか、もし良かったら教えて欲しいと質問してはみたんですが、特にお返事無しでした。

 エラーになる可能性としては、何らかの暗号化ソフトウェアを利用されてる可能性か、またはNEC社のInfoCageを利用されてる例がありますけども。

 とりあえず現状エラーが出る以上は対策オプションをいじって使っていただくしか無いです。

 対策オプションONだと、メール用ファイルを1つ1つランダムアクセスするので、ディスクキャッシュが効いてない&ハードディスクだと遅くなると思いますが、ディスクキャッシュが効く2回目の検索や、そもそもドライブがSSDの時ならそんなには遅くならないと思います。
[ ]
RE:11893 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11895
つばさ さん 23/10/20 16:23 [ コメントを投稿する ]
  ご回答いただきありがとうございます。

ホームディレクトリを外部SSD(USB接続)に設定し、
秀丸メール本体はそれぞれのPC(Windows10,11)にインストール+緊急用にSSDに持ち出しキットを入れている環境で使用しています。

暗号化ソフトウェアは利用しておらず、
ウイルス対策はWindows10はトレンドマイクロ社製、Winsows11はOS標準のDefenderですが、どちらの環境でも同じようなエラーになりました。

ご教示いただいたように対策オプション使用で運用いたします。
3万通ほどのメールの検索をしましたが、確かに遅くなっているという感じはありませんでした。
ありがとうございました。
[ ]
RE:11895 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11897
秀まるお2 さん 23/10/20 18:58 [ コメントを投稿する ]
   詳しい情報&複数環境でテストしていただきありがとうございます。

 メールデータの保存場所もパソコンも極めてノーマルな状況なのにこのエラーが出るということでしたら、秀丸メール側にバグがある可能性が高いような気がします。いまいちどこの辺の処理を見直してみます。
[ ]
RE:11897 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11898
つばさ さん 23/10/21 10:53 [ コメントを投稿する ]
  それほど困っていませんのでお時間のあるときにお願いいたします。

2つある内の片方のアカウントで発生すると書きましたが、正確には発生するメールフォルダと発生しないメールフォルダがあるようです。
発生するフォルダで検索して一覧作成をすると必ずエラーになります。

発生するフォルダのメールファイル?(フォルダ名+年月.txt)を開いてみましたが、見た感じはすべてのメールが「Ctrl+L!」で始まっているように見受けられました。

よろしくお願いいたします。
[ ]
RE:11898 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11899
秀まるお2 さん 23/10/21 21:31 [ コメントを投稿する ]
   ソースコード見直そうと思った所ですが、とりあえず2点教えて欲しいです。

 1.「全般的な設定・上級者向け・デバッグ・デバッグ2」の
   「検索時のファイル読み込みでエラーが出る対策」のみONで
   「検索時のファイル読み込みでエラーが出る対策その2(遅くなる)」はOFFだと、
   やはりエラーになるのかどうか。

 を教えて欲しいです。さらにもし良かったら、

 2.エラーの出るフォルダが決まってるということなので、そのフォルダのメールをどこか
   別のフォルダにコピーして、そのフォルダを対象に「検索して一覧作成」を実行した
   場合にもエラーが出るかどうか。

 も教えて欲しいです。とりあえず「1」だけでも分かるとソースコードの見直し範囲が半分程度に絞られて助かります。
[ ]
RE:11899 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11900
つばさ さん 23/10/22 08:05 [ コメントを投稿する ]
  その2はOffで、その2ではないほうをOnにしてもエラーになります。
メールをコピーしての確認はちょっとお時間ください。
[ ]
RE:11900 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11901
つばさ さん 23/10/22 10:52 [ コメントを投稿する ]
  エラーの出るフォルダごと、メールのコピーをしようとしたところ、以下のエラーでコピーできませんでした。

---------------------------
DebugMessage
---------------------------
メール用ファイルの中身がおかしいです。中断します。
ファイル名=略
内容 = 略

FileMan.cpp(10319) error = 0

ご面倒でなければこのエラーの再現手順を書き添えて、秀丸メール用フォルダにあるdump.txtの内容を作者に連絡ください。また、秀丸メールは一度再起動させるのがお勧めです。


メール一覧を見ていったところ、文字化けしていてヘッダーの途中で途切れたようなメールがいくつか見つかり、それらを削除したところ検索して一覧作成でのエラーがなくなりました。

が、別件でちょっと困ったことになったので、別のコメントで書きます。
[ ]
RE:11901 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11902
つばさ さん 23/10/22 10:57 [ コメントを投稿する ]
  上に書いた作業で、メールフォルダのコピーはエラーで止まったのですが、エラーが出るまでの処理されたメールは別のフォルダにコピーされていました。

その中途半端にコピーされたメールフォルダは不要なので消したのですが、その際にオリジナル(コピー元)のメールの添付ファイルも消えてしまいました。

添付ファイル付きのメールをコピーした場合、どちらかのメールを消すと添付ファイルも消されてしまうのは仕様ではないですよね?
コピーが途中でエラーで止まってしまったで添付ファイルの情報が適切に処理される前で止まってしまったのが原因でしょうか。

すみません。最初の話題から大きく外れてしまいましたが、よろしくお願いいたします。

※幸いすぐ異常に気付いたので、ファイル復旧ツールでほぼ100%復旧できました。
[ ]
RE:11902 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11904
秀まるお2 さん 23/10/22 17:49 [ コメントを投稿する ]
   添付ファイルが無くなりそうになってしまったということで、ご迷惑おかけしてすみません。

■1.コピーの最中にエラーで止まって、コピーされたメール削除後に添付ファイルが無くなった件

 秀丸メールのVersion 7.20から、コピーの最中にもメールの先頭にCtrl-Lがあるかどうかチェックするようにしてまして、今回そのチェックにひっかかってコピーが止まったということだと思うんですが、ただ、その場合には問題のあるメールはコピーされる前にコピーされずに中断するはずになってるようでした。

 メールを同一アカウント内でコピーした場合、添付ファイルはコピーされるんじゃなくて、参照カウントがカウントアップするって動作になってます。なので、コピーはされたけど参照カウントがアップされてなかったら、コピーされたメールのどちらか片方を削除すると、間違って添付ファイルが無くなってしまいます。今回そういう状況になったんだろうと思います。

 今ちょっとソースコード見直した限りは、Ctrl-Lのチェックで止まった場合にはコピーの処理そのものが中断するはずで、それまでコピーされた分のメールの添付ファイル参照数カウントアップがされても大丈夫なはずじゃないかとは思うですが、実際添付ファイルが無くなってるので、何か問題があるんだろうと思います。

 この辺見直ししたいと思います。

■2.メール一覧のキャッシュがおかしかった件

 今回の問題がメール一覧のキャッシュがおかしいことが根本原因だったと思うんですが、「検索して一覧作成」などで「CtrlL...」のエラーが出ても、残念ながらメール一覧のキャッシュが自動で作成しなおしされる処理になってませでした。

 さらには「その2」などの対策オプションONにした場合にエラーが出なくなったのは、すみませんがこの場合のメール読み込み処理でCtrl-Lのチェックが無しになってしまってるせいでした。

 ということでまずはこのチェック関係の処理の問題を直さないといけないです。エラーを見つけたらメール一覧のキャッシュを自動で作成しなおすように修正させていただきます。(対策オプションONの時も含めて)
[ ]
RE:11904 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11907
つばさ さん 23/10/23 01:00 [ コメントを投稿する ]
  状況についてご説明いただきありがとうございます。
メールコピーの際も添付ファイルはコピーされず、参照カウントのみインクリメントされる仕組みについて理解しました。

とりあえず私の環境の不具合は現時点で発生しなくなったのでこのまま様子を見たいと思います。
ありがとうございました。
[ ]
RE:11907 検索して一覧作成でCtrl-L invalidのエラーが出るNo.11908
秀まるお2 さん 23/10/23 12:13 [ コメントを投稿する ]
   「メール用ファイルの中身がおかしいです。中断します。」のエラーになった後の添付ファイルの参照カウントが狂うバグの方は今簡単に再現できました。まずいバグでした。

 まずいバグなので、また近いうちに正式版もバージョンアップしようと思います。

 見つけていただいて助かりました。
[ ]

[ 新規に投稿する ]