秀丸メールが落ちますNo.01008
siniti さん 08/05/09 23:43
 
sinitiです。
V5.06β3で以下の現象です。
秀丸メールを起動します。(起動時にメール送受信を行う設定)
起動時の自動送受信が終了した後で、送受信ボタン押下で落ちました。
メールアドレスにdump.txtを送付しました。

ちなみに、起動時の送受信をはずしても、同様の結果です。
ほとんど送受信ボタン押下で必ずといっていいほど発生します。

調査のほどよろしくお願いします。

[ ]
RE:01008 秀丸メールが落ちますNo.01010
秀まるお さん 08/05/10 10:23
 
 迷惑メールフィルターの中で落ちてるようなので、とりあえず迷惑メールフィ
ルターをOFFにして回避してみて欲しいです。

[ ]
RE:01010 秀丸メールが落ちますNo.01011
秀まるお さん 08/05/10 14:20
 
 追加で調査しました。迷惑メールフィルターの中で落ちてるようですけど、普
通落ちないはずの処理で落ちてます。

 ヒープからメモリを確保して、そこにアクセスした瞬間に落ちてます。

 この前送っていただいたdump.txtも、Buffer overrunということでエラーにな
ってましたが、Buffer overrunになるはずのない処理でした。

 いわゆるヒープが破壊されてしまってるってことではないかと思うんですが、
なぜそうなるのか今のところよく分かりません。最近になって急に発生してるっ
てことであれば、何か最近になって新しく設定変更とかした点があって、それが
関係してるんじゃないかと思います。

 別会議室にhidebiffがどうこうって話が出ているようなので、つまり、
hidebiffを使うようになってから落ちるようになったってことですかね?。

 とりあえずその辺で、とにかく

 1.最近ここの設定をいじったって思い当たる所があれば、そこの設定を
   元に戻してみる。

 2.最近このマクロを動かすようになったって物があれば、それを使わない
   ようにしてみる。

 って作戦をやってみて欲しいです。

 それで回復するとしたら、具体的にどういう設定をどういじったらダメなのか
とか、どういうマクロを動かすとおかしくなるとかが分かるかなぁと思います。

 今のところそうやって調べていただくしか無いように思います。

[ ]
RE:01011 秀丸メールが落ちますNo.01012
siniti さん 08/05/10 14:55
 
秀まるお様

>最近になって急に発生してるっ
>てことであれば、何か最近になって新しく設定変更とかした点があって、それが
>関係してるんじゃないかと思います。
>
> 別会議室にhidebiffがどうこうって話が出ているようなので、つまり、
>hidebiffを使うようになってから落ちるようになったってことですかね?。

とりあえずhidebiffをやめて見ます。
ちなみに、このhidebiffの設定をマクロ登録から削除して、「OK」押下
しても同じように落ちました。
hidebiffをなくして様子を見ます。
ありがとうございました。

変化があればまた投稿します。

[ ]
RE:01012 秀丸メールが落ちますNo.01015
秀まるお さん 08/05/10 17:00
 
> ちなみに、このhidebiffの設定をマクロ登録から削除して、「OK」押下
> しても同じように落ちました。

 たぶん、落ちた瞬間の操作が関係してるというよりは、それより前に行った何
らかの操作によってヒープが壊れてしまっているのが原因ではないかと思います。

 hidebiffをダウンロードして中のマクロを見てみたんですが、これ自体はそん
なに難しいことをやってる訳でもないし、ヒープを壊すはずは無いような気がし
ます。

 送っていただいたdump.txtによると、秀丸メールのプロセス内で他の常駐ソフ
トのDLL(なんとかLauncer)が居るようなので、もしかしたらそういう常駐ソフ
ト類が影響してるのかもしれないです。最近そういう常駐ソフト類をインストー
ルされたのでしたら、それをアンインストールしてみると何か変化があるかもし
れないです。

[ ]
RE:01015 秀丸メールが落ちますNo.01016
siniti さん 08/05/10 21:47
 
sinitiです。

> 送っていただいたdump.txtによると、秀丸メールのプロセス内で他の常駐ソフ
>トのDLL(なんとかLauncer)が居るようなので、もしかしたらそういう常駐ソフ
>ト類が影響してるのかもしれないです。最近そういう常駐ソフト類をインストー
>ルされたのでしたら、それをアンインストールしてみると何か変化があるかもし
>れないです。

特に、最近常駐ソフトをインストールしたような記憶がないのですが。
ためしに、hidebiffをマクロから外して実行しても2回の送受信でも
落ちませんでした。
 しかし、hidebiffをマクロで指定して、送受信を2回実行
(1回目はテスト電文を送信・受信ですが)したら見事に落ちました、
そのときのdump.txtをメール送付しました。

>秀丸メールのプロセス内で他の常駐ソフトのDLL(なんとかLauncer)

秀丸メール内のプロセスで動くものとしては、hidebiff.exeと、メール到着のトース
トを表示する「ToastNotify.exe」です。
それ以外のdllがある場合には、どうやって調べたらいいですか?

[ ]
RE:01016 秀丸メールが落ちますNo.01018
秀まるお さん 08/05/10 22:24
 
 hidebiff.exeとToastNotify.exeはrun文で実行されてるだけなので、秀丸メー
ルプロセス内のヒープを破壊することはありえないと思います。

 マクロを見た限りでは、"EnvChanged"関数呼び出しを2回している所があって、
しいてヒープが壊れるとしたらここかもしれません。(それはそれで秀丸メール
のバグってことになりますが)

 なので、とりあえずwriteregnumしてる所とEnvChanged関数呼び出ししてる所
の行頭に「//」を入れてコメントアウトしてもらうと落ちなくなったりするかも
しれませんけど…。ただそれだとマクロが正しく動作しないのかもしれないです。

 僕の方でもその辺テストしてみます。(月曜日以降に)

[ ]
RE:01018 秀丸メールが落ちますNo.01019
siniti さん 08/05/10 23:04
 
秀まるお様

sinitiです。
> なので、とりあえずwriteregnumしてる所とEnvChanged関数呼び出ししてる所
>の行頭に「//」を入れてコメントアウトしてもらうと落ちなくなったりするかも
>しれませんけど…。ただそれだとマクロが正しく動作しないのかもしれないです。

とりあえず、ご支持のところ(下記の2ケ所づつ)をコメント化したら
落ちなくなりました。
機能的にも私の(あるいは作者様も同様と思いますが)思っている動きはします。
したがって、これでしばらく使用して見ます。
ありがとうございました。

if (#reason == 4) {
 #n = dllfunc("SelectRecvMail");
} else if (#reason == 3) {
 openreg "CURRENTUSER", "Software\\Hidemaruo\\TuruKame\\Config";
//* writeregnum "FilterLog", 0;
 closereg;
//* #n = dllfunc("EnvChanged");
 #count = dllfunc("RecvMailCountShow");



  openreg "CURRENTUSER", "Software\\Hidemaruo\\TuruKame\\Config";
//*  writeregnum "FilterLog", 2;
  closereg;
//*  #n = dllfunc("EnvChanged");
  $path = $home + "\\hidebiff.exe -i";

以上。報告まで。

[ ]
RE:01019 秀丸メールが落ちますNo.01022
秀まるお さん 08/05/12 09:26
 
 ということは、たぶんEnvChanged関数の中でヒープが壊れてるのだと思います。
他のユーザー様の所で落ちてないということは、何か特定の条件の時にダメって
ことなんだろうと思います。

 ということで調べてみます。

[ ]
RE:01022 秀丸メールが落ちますNo.01026
siniti さん 08/05/12 20:45
 
> ということは、たぶんEnvChanged関数の中でヒープが壊れてるのだと思います。
>他のユーザー様の所で落ちてないということは、何か特定の条件の時にダメって
>ことなんだろうと思います。
>
> ということで調べてみます。

ありがとうございます。
よろしくお願いします。

[ ]
RE:01026 秀丸メールが落ちますNo.01031
秀まるお さん 08/05/13 11:53
 
 調べてみたんですけど、やはりヒープ破壊が起きる原因がいまいち分かりませ
んでした。ただ、実はずっとまえBuffer overrunが起きた箇所(検索条件の履
歴)については、昔もBuffer overrunが起きたことがあって、その時も原因が分
からず、とりあえずメモリ確保するサイズをプラス4バイトするという、その場
しのぎの対処をしてたようです。

 なので、またとりあえず的な対処ですが、そのサイズをさらに大きく(+16
バイトに)してみることにします。

 もしよかったら次のβ版で、hidebiffマクロのコメントアウトした所を復活さ
せてみて、それで落ちるかどうかテストしていただけると助かります。

 次のβ版は今日にでもアップロードします。

[ ]
RE:01031 秀丸メールが落ちますNo.01033
siniti さん 08/05/13 23:12
 
秀まるお様

> 調べてみたんですけど、やはりヒープ破壊が起きる原因がいまいち分かりません
>でした。

やはり無理でしたか?

> なので、またとりあえず的な対処ですが、そのサイズをさらに大きく(+16
>バイトに)してみることにします。
>
> もしよかったら次のβ版で、hidebiffマクロのコメントアウトした所を復活さ
>せてみて、それで落ちるかどうかテストしていただけると助かります。
>
> 次のβ版は今日にでもアップロードします。

とりあえず、Ver.5.06β4 にしました。
様子を見ます。
忙しい中を調査および対応頂きまして、いろいろありがとうございました。

[ ]