送受信が終了しないNo.05203
ひろ さん 01/06/19 17:59
 
 秀まるおさん今日は、ひろです。
 送受信中に「次の未読メール」等でメールを読み進めていると、全てのメー
ルを受信しているにも関わらず、受信作業が終わらない事があります。
 「中断」を選択すれば、復旧するのですがなんだか不気味です。なお最新
版のみで現れるわけではなく、Ver.1.15 辺りからこの様な状況でした。

[ ]
RE:05203 送受信が終了しないNo.05214
秀まるお さん 01/06/22 18:53
 
 斉藤秀夫です。

>  秀まるおさん今日は、ひろです。
>  送受信中に「次の未読メール」等でメールを読み進めていると、全てのメー
> ルを受信しているにも関わらず、受信作業が終わらない事があります。

 んでは、メール切り換えの時のスレッド間の同期の時に、送受信ダイアログ
を終了させるメッセージを消してしまっているようです。

 さっそく修正させていただきます。

[ ]
RE:05214 送受信が終了しないNo.05215
ひろ さん 01/06/22 19:32
 
 秀まるおさん今日は、ひろです。
>  んでは、メール切り換えの時のスレッド間の同期の時に、送受信ダイアログ
> を終了させるメッセージを消してしまっているようです。
>
>  さっそく修正させていただきます。
 有り難うございます。
 再現性が低いので、またまたお蔵入りになるかと思っていましたが(^^;、
良かったです。

[ ]
RE:05215 送受信が終了しないNo.05217
秀まるお さん 01/06/23 15:48
 
> >  んでは、メール切り換えの時のスレッド間の同期の時に、送受信ダイアログ
> > を終了させるメッセージを消してしまっているようです。

 っと思ったんですが、ソースコードを見直した限りではそういうことも無さ
そうです。

 エディタでメールを開いて、

 − 鶴亀本体で「送受信・受信」を実行。
 − Alt+Tabでエディタに切り換え
 − Alt+上下矢印キーを連打して、メール切り換え
   (Alt+上下矢印キーに「上のメール/下のメール」を割り当てている)

 とするテストを何回も繰り返してみましたけど、送受信中のダイアログボッ
クスが終了しない現象は起きませんでした。

 Windows2000でしかテストしてないので、今度Windows98でテストしてみよう
と思いますが、よろしければ、ひろさんの所での発生頻度を教えて欲しいです。

 できれば上記のような単純な操作で再現するかどうかも教えて欲しいなぁと
…。

[ ]
RE:05217 送受信が終了しないNo.05218
ひろ さん 01/06/23 16:24
 
 秀まるおさん今日は、ひろです。
> > >  んでは、メール切り換えの時のスレッド間の同期の時に、送受信ダイアログ
 この御返事で気付くべきだったのですが、送受信ダイアログボックスは表
示させていません。タイトル/ステータスバーが「送受信中」のままになる
だけです。

>  Windows2000でしかテストしてないので、今度Windows98でテストしてみよう
> と思いますが、よろしければ、ひろさんの所での発生頻度を教えて欲しいです。
 たくさんのメールを一度に受信したときの方が多いよう。またメールは本
体で読んでいるので、
>  エディタでメールを開いて、
というテスト条件の意味が今一つ解りません。また
>    (Alt+上下矢印キーに「上のメール/下のメール」を割り当てている)
普段使用しているのは、「次の未読ページ」ですが、「上/下のメール」で
テストするということでしょうか?

[ ]
RE:05218 送受信が終了しないNo.05219
秀まるお さん 01/06/23 22:50
 
>  たくさんのメールを一度に受信したときの方が多いよう。またメールは本
> 体で読んでいるので、
> >  エディタでメールを開いて、
> というテスト条件の意味が今一つ解りません。また

 エディタを起動して、そこのエディタ上で並行操作していた場合の話かと思
っていましたが、そうじゃないということは、スレッドの同期がどうこういう
話は全然関係ないようです。

 とりあえず怪しいと思われる処理でデバッグメッセージを多数出すようにし
ておいて、念のため的な処理も追加してみます。

[ ]
RE:05219 送受信が終了しないNo.05220
ひろ さん 01/06/24 09:20
 
 秀まるおさん今日は、ひろです。
>  とりあえず怪しいと思われる処理でデバッグメッセージを多数出すようにし
> ておいて、念のため的な処理も追加してみます。
 それでは次版にてデバッグメッセージが出力されたら、改めて御連絡します。

[ ]
RE:05220 送受信が終了しないNo.05222
秀まるお さん 01/06/25 18:00
 
>  それでは次版にてデバッグメッセージが出力されたら、改めて御連絡します。

 実は、今のバージョンでもかなりその辺のメッセージを出しているので、す
みませんがdump.txtのその辺の情報を教えて欲しいです。

 具体的には、送受信中にPAUSEキーを押した場合にdump.txtに

    17:53:48.108 ( 416) CSock::PostExit()
    中断

 のような記録が出るはずなので、その「中断」の文字列を検索して、該当し
そうな箇所のログを教えて欲しいです。

 該当しそうな部分(送受信が終了しなくて「中断」した場合)というのは、
たぶん、「中断」を押した時間よりもだいぶ前に

    S QUIT
    R +OK Pop server at po signing off.

 のような記録(POP3サーバーから切断する直前のやりとり)があるはずです。

 んでもって、その直後は普通、

    14:23:50.278 (1801) TransDlgProc() WM_TURUKAME_SOCKET_END
    14:23:50.278 (1834) IDTIMER_START post
    14:23:50.278 (1574) IDTIMER_START kill
    14:23:50.288 (1595) IDTIMER_END set
    14:23:50.588 (1781) IDTIMER_END kill
    14:23:50.588 ( 101) EndSilentDialog()
    14:23:50.588 (1848) TransDlgProc() WM_DESTROY
    14:23:50.588 (  95) SilentDialogBox() exit

 ような形で正常終了してるはずですが、「送受信中」のままになるとしたら、
上記のどこかの部分からが出てないんだと思います。

 探すのが面倒でしたら、また今度起きたときでもかまいませんので、気長に
お待ちしています。

[ ]
RE:05222 送受信が終了しないNo.05225
ひろ さん 01/06/25 19:08
 
 秀まるおさん今日は、ひろです。
>  実は、今のバージョンでもかなりその辺のメッセージを出しているので、す
> みませんがdump.txtのその辺の情報を教えて欲しいです。
 すいません。先のメールを出してから dump.txt を削除してしまいました。

>  探すのが面倒でしたら、また今度起きたときでもかまいませんので、気長に
> お待ちしています。
 これに甘えさせていただき、再現してから改めて投稿します。

[ ]
RE:05222 送受信が終了しないNo.05229
ひろ さん 01/06/28 18:06
 
 秀まるおさん今日は、ひろです。
 本日再現しました。しかし、
>  具体的には、送受信中にPAUSEキーを押した場合にdump.txtに
>
>     17:53:48.108 ( 416) CSock::PostExit()
>     中断
>
>  のような記録が出るはずなので、その「中断」の文字列を検索して、該当し
> そうな箇所のログを教えて欲しいです。
この箇所がありません。末尾に dump.txt を書き込んでいますが、具体的には
「PostExit」はあっても「中断」がありません。該当ヶ所が解りませんので、
問題が起きた定期的受信から、次の定期的受信までを、メールのログを除い
て全て記載します。ただし個人情報に関する部分は置き換えています。
17:46:37.700 (4186) ProcessCommand 40143
17:46:37.700 (3039) EnterTrans(), dwRet = 0
17:46:37.700 (3047) EnterTrans() entered
17:46:37.750 (1934) ProcessTransmitSub()
17:46:37.750 ( 525) RASSUB::EnsureOnline()
17:46:37.750 ( 534) RASSUB: GetConnectedState
17:46:37.750 ( 536) RASSUB: already connected
17:46:37.750 ( 328) CSock::CSock()
17:46:37.750 (2042) ProcessTransmitSub() new pSock
17:46:37.750 (2060) ProcessTransmitSub() ModelessDialog, TransDlgProc
17:46:37.750 (  54) SilentDialogBox()
17:46:37.750 (1479) TransDlgProc() WM_INITDIALOG
17:46:37.750 (1497) IDTIMER_START set
17:46:37.750 (1553) IDTIMER_START kill
17:46:37.750 ( 568) CSock::StartRecvSub()
====== 2001/06/28 17:46:37 mode=受信 account=1
サーバーを検索中 - account1
接続中
R +OK QPOP (version 2.53) at account1 starting.  <23651.993718003@account1>
S USER user
R +OK Password required for user.
S PASS ****
R +OK user has 0 messages (0 octets).
S QUIT
R +OK Pop server at account1 signing off.
17:46:38.470 ( 416) CSock::PostExit()
17:46:38.470 (1780) TransDlgProc() WM_TURUKAME_SOCKET_END
17:46:38.470 (1813) IDTIMER_START post
17:46:38.470 (1553) IDTIMER_START kill
17:46:38.520 ( 568) CSock::StartRecvSub()
====== 2001/06/28 17:46:38 mode=受信 account=2
サーバーを検索中 - accout2
接続中
R +OK 2 pop server at accout2 starting. <10070.993718008@accout2>
S APOP ****
R +OK user has 3 message(s).
S STAT
R +OK 3 3717
S UIDL
R +OK
1 00WZ09UB
2 01DIDRFK
3 01U1R8FD
.
R ...(39バイト)
S LIST
R +OK 3
1 1551
2 1155
3 1011
.
R ...(27バイト)
S RETR 1
R +OK 1551 octets
<----------------- hidesoft_8_2112 のログ ---------------------->
.
R ...(1581バイト)
S DELE 1
R +OK 1551 octets
S RETR 2
R +OK 1155 octets
<----------------- hidesoft_8_2113 のログ ---------------------->
.
R ...(1184バイト)
S DELE 2
R +OK 1155 octets
S RETR 3
R +OK 1011 octets
<----------------- hidesoft_8_2114 のログ ---------------------->
.
R ...(1034バイト)
S DELE 3
R +OK 1011 octets
S QUIT
17:46:49.010 (4186) ProcessCommand 42004
17:46:49.070 (4186) ProcessCommand 40028
R +OK Good Bye
17:46:51.150 ( 416) CSock::PostExit()
17:46:51.150 (1780) TransDlgProc() WM_TURUKAME_SOCKET_END
17:46:51.150 (1813) IDTIMER_START post
17:46:56.760 (4186) ProcessCommand 40079
17:46:57.360 (4186) ProcessCommand 42004
17:46:57.360 (4186) ProcessCommand 40028
17:47:29.990 (4186) ProcessCommand 42004
17:47:29.990 (4186) ProcessCommand 40028
17:47:49.590 (4186) ProcessCommand 40013
17:47:49.590 (4533) DialogBox2() template=234
17:47:50.470 (4535) DialogBox2() exit
17:47:50.970 (4186) ProcessCommand 40014
17:47:53.000 (4186) ProcessCommand 40066
17:47:53.000 (4533) DialogBox2() template=239
17:47:56.950 (4535) DialogBox2() exit
17:47:57.010 ( 656) HmCreate
17:47:57.010 ( 658) HmCreate return
17:48:02.390 (4186) ProcessCommand 40019
17:48:02.670 (7378) ThreadFunc: HmCreate
17:48:02.670 (2495) call WinMainSub
17:48:02.670 (2495) FrameWndProc: WM_CREATE
17:48:02.670 (2495) ClientWndProc: WM_CREATE
17:48:02.670 (2495) return WinMainSub
17:48:02.670 (7380) HmCreate return
17:48:03.160 (3193) エディタコマンド: 40046
17:48:03.160 (3193) エディタコマンド: 40045
17:48:04.860 (2728) FrameWndProc() IDTIMER_AUTODOWN
17:48:04.860 (4910) StopAutoDownTimer()
17:48:04.860 (2802) CTrans::AutoDown()
17:48:04.860 (2806) CTrans::AutoDown() return TRUE
17:48:04.860 (4894) StartAutoDownTimer()
17:48:04.860 (4902) StartAutoDownTimer() set
17:48:26.340 (3193) エディタコマンド: 40056
17:48:26.340 (6419) BeginNewAtachList
17:48:26.340 (4831) NotifyListCacheBaseMoved
17:48:36.500 (4186) ProcessCommand 40066
17:48:36.500 (4533) DialogBox2() template=239
17:48:39.410 (4535) DialogBox2() exit
17:48:39.410 ( 656) HmCreate
17:48:39.470 ( 658) HmCreate return
17:48:41.830 (3576) LVM_GETITEMTEXT i=45 bad1=0, bad2=0
17:48:41.830 (3576) LVM_GETITEMTEXT i=45 bad1=0, bad2=0
17:48:42.600 (3576) LVM_GETITEMTEXT i=44 bad1=0, bad2=0
17:48:42.600 (3576) LVM_GETITEMTEXT i=44 bad1=0, bad2=0
17:48:42.820 (3576) LVM_GETITEMTEXT i=43 bad1=0, bad2=0
17:48:42.820 (3576) LVM_GETITEMTEXT i=43 bad1=0, bad2=0
17:48:42.980 (3576) LVM_GETITEMTEXT i=42 bad1=0, bad2=0
17:48:42.980 (3576) LVM_GETITEMTEXT i=42 bad1=0, bad2=0
17:48:44.080 (3576) LVM_GETITEMTEXT i=41 bad1=0, bad2=0
17:48:44.080 (3576) LVM_GETITEMTEXT i=41 bad1=0, bad2=0
17:48:44.250 (3576) LVM_GETITEMTEXT i=40 bad1=0, bad2=0
17:48:44.250 (3576) LVM_GETITEMTEXT i=40 bad1=0, bad2=0
17:48:44.460 (3576) LVM_GETITEMTEXT i=39 bad1=0, bad2=0
17:48:44.460 (3576) LVM_GETITEMTEXT i=39 bad1=0, bad2=0
17:48:44.630 (3576) LVM_GETITEMTEXT i=38 bad1=0, bad2=0
17:48:44.630 (3576) LVM_GETITEMTEXT i=38 bad1=0, bad2=0
17:48:44.790 (3576) LVM_GETITEMTEXT i=37 bad1=0, bad2=0
17:48:44.790 (3576) LVM_GETITEMTEXT i=37 bad1=0, bad2=0
17:49:09.510 (3193) エディタコマンド: 40006
17:49:35.270 (3193) エディタコマンド: 40056
17:49:35.270 (6419) BeginNewAtachList
17:49:35.380 (3193) エディタコマンド: 40077
17:50:41.070 ( 101) EndSilentDialog()
17:50:41.070 (1827) TransDlgProc() WM_DESTROY
17:50:41.070 (  95) SilentDialogBox() exit
17:50:41.070 (2062) ProcessTransmitSub() ModelessDialog, TransDlgProc exit
17:50:41.070 ( 345) CSock::~CSock()
17:50:41.070 (2077) ProcessTransmitSub() delete pSock
17:50:41.130 (2148) ProcessTransmitSub() exit
17:50:41.130 (3052) LeaveTrans()
17:50:41.130 (4894) StartAutoDownTimer()
17:50:41.130 (4902) StartAutoDownTimer() set
17:51:57.470 (4186) ProcessCommand 40066
17:51:57.470 (4533) DialogBox2() template=239
17:51:59.230 (4535) DialogBox2() exit
17:51:59.290 ( 656) HmCreate
17:51:59.290 ( 658) HmCreate return
17:52:01.870 (3576) LVM_GETITEMTEXT i=0 bad1=0, bad2=0
17:52:03.080 (3576) LVM_GETITEMTEXT i=1 bad1=0, bad2=0
17:52:03.300 (3576) LVM_GETITEMTEXT i=2 bad1=0, bad2=0
17:52:03.680 (3576) LVM_GETITEMTEXT i=3 bad1=0, bad2=0
17:52:06.210 (3576) LVM_GETITEMTEXT i=2 bad1=0, bad2=0
17:52:11.530 (3576) LVM_GETITEMTEXT i=1 bad1=0, bad2=0
17:52:16.590 (4186) ProcessCommand 40094
17:52:20.210 (4186) ProcessCommand 40120
17:52:34.660 (4547) DialogBox2Param() template=291
17:52:36.090 (4549) DialogBox2Param() exit
17:52:36.090 (4186) ProcessCommand 40082
17:52:36.090 (4800) NotifyListCacheOffsetMoved
17:52:39.270 (4186) ProcessCommand 40120
17:52:43.560 (3576) LVM_GETITEMTEXT i=2 bad1=0, bad2=0
17:52:48.720 (3576) LVM_GETITEMTEXT i=6 bad1=0, bad2=0
17:52:51.740 (3576) LVM_GETITEMTEXT i=11 bad1=0, bad2=0
17:52:56.630 (4186) ProcessCommand 40094
17:52:58.820 (3576) LVM_GETITEMTEXT i=11 bad1=0, bad2=0
17:53:19.370 (4186) ProcessCommand 40006
17:55:41.130 (2728) FrameWndProc() IDTIMER_AUTODOWN
17:55:41.130 (4910) StopAutoDownTimer()
17:55:41.130 (2802) CTrans::AutoDown()
17:55:41.130 (3039) EnterTrans(), dwRet = 0
17:55:41.130 (3047) EnterTrans() entered
17:55:41.950 (1934) ProcessTransmitSub()
17:55:41.950 ( 525) RASSUB::EnsureOnline()
17:55:41.950 ( 534) RASSUB: GetConnectedState
17:55:41.950 ( 536) RASSUB: already connected
17:55:42.010 ( 328) CSock::CSock()
17:55:42.010 (2042) ProcessTransmitSub() new pSock
17:55:42.010 (2060) ProcessTransmitSub() ModelessDialog, TransDlgProc
17:55:42.010 (  54) SilentDialogBox()
17:55:42.010 (1479) TransDlgProc() WM_INITDIALOG
17:55:42.010 (1497) IDTIMER_START set
17:55:42.010 (1553) IDTIMER_START kill
17:55:42.060 ( 568) CSock::StartRecvSub()
====== 2001/06/28 17:55:42 mode=受信 account=1

[ ]
RE:05229 送受信が終了しないNo.05231
秀まるお さん 01/06/29 18:47
 
 斉藤秀夫です。おかげさまで原因が分かりました。

 WM_TIMERをPostMessageしてて、それがどこかに消えてしまったようです。
ちゃんとSetTimerするように修正させていたただきます。

[ ]
RE:05231 送受信が終了しないNo.05234
ひろ さん 01/06/30 10:16
 
 秀まるおさん今日は、ひろです。
>  WM_TIMERをPostMessageしてて、それがどこかに消えてしまったようです。
 原因が分かって良かったです。それでは修正をよろしくお願いします。

[ ]