検索ダイアログボックスの条件がリセットNo.04205
Kengo さん 12/08/28 22:10
 
「検索ダイアログボックス(秀丸メール本体側)」をよく使うのですが、
設定しておいた検索条件が、次に開いた時にリセットされていることがあります。

環境は 秀丸メール5.78、常駐無し、WinXP SP3 です。

○条件

[ ]大文字/小文字の区別
[ ]単語の検索
[ ]見つからなかった方を対象とする

をチェックして検索しても、
秀丸メールを終了して、起動して、再度ダイアログを開くと、
必ずチェックが外れています。
常駐していれば外れないのかもしれませんが未確認です。

○対象(X)

・本文
・簡略ヘッダ+本文
・すべてのヘッダと本文
あたりをよく使うのですが、
なんらかのタイミングで、初期値(?)の「件名 (Subject:)」に戻ってしまう
ことがあります。

頻度は日に1〜2回程度ですが、何が条件になっているのかはっきりしません。
・秀丸メールを終了、再度起動
・Windowsをログオフ、ログオン
・PCをサスペンド、レジューム
・PCを再起動
などいろいろやってみているのですが、条件の特定には至っていません。

[ ]
RE:04205 検索ダイアログボックスの条件がNo.04206
秀まるお さん 12/08/28 22:41
 
 「単語の検索」や「見つからなかった方を対象とする」は、秀丸メールを再起
動するとリセットされるようです。(今ちょっと試してみた限りでは)

 「大文字/小文字の区別」と「正規表現」と、あと「対象(X):」はずっとキー
プしてくれないとダメな気がします。

 実は、まさに今日ですが、秀丸パブリッシャー等の担当のマシンでも同じよう
な現象が起き出して困るという話をしてました。もしかしたら秀丸エディタが関
係して起きてるのかもしれませんけども…。

 とりあえず、秀丸メール起動時の自動起動マクロで、たとえば

    loaddll "tkinfo.dll";
    #n = dllfunc("SetFindPack"
           , "(\"\", target=smallheaderbody, casesense, word, not )" );

 のようなのを実行すれば、とりあえず再起動によって検索条件が復活すると思
います。それで回避してみてほしいです。

 根本的な原因究明のためには、検索条件が書き換わった時にdump.txtに何か情
報出力するようにして、それのログを取って調べてもらう作戦があります。うち
の社員の所でも起きてることなので、その作戦でトライしてみます。

[ ]
RE:04205 検索ダイアログボックスの条件がNo.04207
Iranoan さん 12/08/28 22:46
 
 Kengo さん今日は、Iranoan です。
> 「検索ダイアログボックス(秀丸メール本体側)」をよく使うのですが、
> 設定しておいた検索条件が、次に開いた時にリセットされていることがあります。
 おそらく使っているマクロが元に戻す処理をしていないのだと思います。

> ・秀丸メールを終了、再度起動
<snip>
> などいろいろやってみているのですが、条件の特定には至っていません。
との事なので、マクロが原因だとしても、起動/終了時の自動起動マクロは除
外して良いでしょう。

[ ]
RE:04206 検索ダイアログボックスの条件がNo.04208
Kengo さん 12/08/28 23:02
 
>  「単語の検索」や「見つからなかった方を対象とする」は、秀丸メールを再起
> 動するとリセットされるようです。(今ちょっと試してみた限りでは)

「仕様」ですか? 仕様なら私としてはそれでも構わないと思います。

>  実は、まさに今日ですが、秀丸パブリッシャー等の担当のマシンでも同じよう
> な現象が起き出して困るという話をしてました。もしかしたら秀丸エディタが関
> 係して起きてるのかもしれませんけども…。

秀丸エディタ(6.14)は常駐したままヘビーに使っています。
平行して秀丸メールも使いますが、こちらは常駐せず、用事が済んだら
終了させているのでプロセスは残らないはずです。

秀丸エディタが関係… はあるかもしれないと思います。
検索やgrepは頻繁に使います。
メールを書く時は、秀丸メールのメールビューア・メールエディタと
秀丸エディタとの間で頻繁に行き来します。
秀丸エディタ側で「条件がリセットされる」と感じることはありませんが、
もしかしたら「常駐だから」かもしれません。

>  とりあえず、秀丸メール起動時の自動起動マクロで、たとえば

今のところそこまで困ってはいませんが、参考にさせていただきます。

>  根本的な原因究明のためには、検索条件が書き換わった時にdump.txtに何か情
> 報出力するようにして、それのログを取って調べてもらう作戦があります。うち
> の社員の所でも起きてることなので、その作戦でトライしてみます。

もし必要でしたらログ取りします。

[ ]
RE:04207 検索ダイアログボックスの条件がNo.04209
Kengo さん 12/08/28 23:06
 
>  おそらく使っているマクロが元に戻す処理をしていないのだと思います。

マクロは「自動起動→送信用のエディタ起動時」に自作のマクロが動いてますが、、
ヘッダをいじる程度で検索関係は使ってない…はずです。
今見たらタイムスタンプが2005年になっていました。
リセットされる現象を感じ始めたのは、ここ数カ月以内だと思います。
# 条件の特定ができないこともあってなかなか報告できずにいました。

[ ]
RE:04209 検索ダイアログボックスの条件がNo.04211
秀まるお さん 12/08/29 14:46
 
 次のβ版(V5.79β7)にて、一応この辺のログを出力するようにします。

 「対象(X):」の値を書き換える処理については、dump.txtに、

   findtarget=XXXX

 みたいなログを出すようにします。件名(Subject)が対象の場合はこれが0と
なります。

 「全般的な設定・上級者向け・動作の記録」でdump.txtを取る設定で使ってい
ただいて、もしも「対象(X):」が件名(Subject)に切り替わってしまったら、そ
のタイミングでdump.txtを開いて、"findtarget"の文字列で検索して、その値が
0に書き換わった位置を探していただいて、それの前後の数行ずつ程度を教えて
いただけれは、どこの処理で書き換わったのか特定出来ると思います。

 dump.txtは10メガバイト程度でdump.bakファイルにバックアップされるので、
もしdump.txtに無ければdump.bakファイルを開いて探してほしいです。

 ということでお願いします。

 (β版のアップロードはまだですが)

 あと、「大文字/小文字の区別」や「単語の検索」等の条件も、秀丸メールを
起動しなおしても同じ状態をキープするように仕様変更させていただきます。そ
れと、これについても一応ログを出します。こっちは「findflags」になります。

[ ]
RE:04211 検索ダイアログボックスの条件がNo.04216
Kengo さん 12/09/03 17:14
 
>  次のβ版(V5.79β7)にて、一応この辺のログを出力するようにします。

「対象(X):」が「件名(Subject)」に戻ってfindtarget=0、
「大文字/小文字の区別」と「単語の検索」のチェックが外れてfindflags=0、
どちらも(同時に)発生しましたので、dump.txtを送りました。

[ ]
RE:04216 検索ダイアログボックスの条件がNo.04218
秀まるお さん 12/09/03 18:00
 
 dump.txt送っていただきありがとうございます。

 送っていただいたログによると、たしかに秀丸メール起動時は

17:07:06.250 (2986) CConfig::Load findtarget=4,4

 となってるのに、終了時点では、

17:08:01.500 (4251) SaveWindowParam findtarget=0

 と、値が0になってしまってるようです。

 一応、ソースコードの中で、findtargetの値を書き換える処理にはすべてdump.
txt出力を入れたつもりだったんですが、どこにも記録が出てないようです。と
いうことは、僕の想定外の所で値が書き換わってしまってるようです。

 なんとか送っていただいたログから原因究明させていただきます。

[ ]
RE:04218 検索ダイアログボックスの条件がNo.04220
Kengo さん 12/09/03 18:09
 
>  一応、ソースコードの中で、findtargetの値を書き換える処理にはすべてdump.
> txt出力を入れたつもりだったんですが、どこにも記録が出てないようです。と
> いうことは、僕の想定外の所で値が書き換わってしまってるようです。

やはりそうですか。
なんとなく、ですが、
[送受信(T)]→[リモートメール(R)...]→[最新の一覧を取得しなおす(R)]
が発生条件(の一つ)になっているのではないか?という気がします。

外していたらすいません。

[ ]
RE:04220 検索ダイアログボックスの条件がNo.04221
秀まるお さん 12/09/03 22:35
 
 送っていただいたdump.txtからどういうコマンドを実行されたのかは分かって、
たしかにリモートメール一覧も実行されるようですが…。

 それが原因なのかどうか、ちょっと分かりませんでした。

 単純にリモート−メール一覧を出して「最新の一覧取得」とやって再現する訳
でもないようで、なんだかややこしいです。

 ソースコードを見直して、とにかく値を書き換えてる所が他にあるか探すしか
無さそうです。

[ ]
RE:04211 検索ダイアログボックスの条件がNo.04223
Kengo さん 12/09/04 13:09
 
>  次のβ版(V5.79β7)にて、一応この辺のログを出力するようにします。

1)秀丸メール起動
2)リモートメールから受信
3)そのメールを移動(←これはたぶん必須ではないと思います)
4)ビューワで閲覧
5)ビューワを閉じる
6)Ctrfl+Fで検索ダイアログを開く
で、「件名」に戻る確率が高いような気がします。

[ ]
RE:04223 検索ダイアログボックスの条件がNo.04224
秀まるお さん 12/09/04 15:14
 
 いろいろテストしていただいた結果を送っていただきまして、最終的にバグが
特定出来ました。ありがとうございます。

 僕の所では、全般的な設定での「メール一覧・表示範囲」の所にカスタム表示
範囲の指定があって、それがあると再現しないようでした。無しにしたら再現し
ました。

 とにかく修正して、V5.79β8としてまたアップロードさせていただきます。

[ ]
RE:04224 検索ダイアログボックスの条件がNo.04225
Kengo さん 12/09/04 15:49
 
>  僕の所では、全般的な設定での「メール一覧・表示範囲」の所にカスタム表示
> 範囲の指定があって、それがあると再現しないようでした。無しにしたら再現し
> ました。

なるほど。そういう設定は初めて知りましたので未設定でした。
秀丸メール以外の環境依存だったらどうしようか?と思ってました。

確かにカスタム表示範囲を設定すると、同じ操作をしても「対象(X)」は
保持されていますが、
「大文字/小文字の区別(C)」「単語の検索(W)」はクリアされるようです。
β8でまた確認したいと思います。

[ ]