秀丸メールの終了が遅くなりましたNo.12861
dagloss さん 24/09/26 08:42
 
dagloss と申します

何時も大変便利に使用させて頂いております。
過去ログで「秀丸メール終了が極端に遅い」という内容を確認しています。
わたくしどもは、極端に遅いというわけではないのですが、
dump.txtをみると、閉じるボタンが押されてから3秒程度でやっと
終了する状態かとおもわれます。

過去ログに解説くださっている内容(dump.txt)の最後の方を
下記の通り転記致しますので、対処方法をご教示ください。
以前は、一瞬の内に終了できておりました。

----------------------------------------------------------------------------
-----------------------------
08:36:11.177 (12012) syscommand 0xF060
08:36:11.177 (12118) will DefWindowProc
08:36:11.178 (10776) QueryEndSessionInter message=16
08:36:11.178 ( 292) CommandImapAppendSent cWantImapUploadSent == 0
08:36:11.178 (11650) SetWaitCursor 0
08:36:11.220 (11801) RestoreWaitCursor 0
08:36:11.221 (2380) CloseGrepHot fAll=1 cGrepDlgInstance=0
08:36:11.221 (2411) CloseGrepHot exit, fGrepProcessing=0, cGrepDlgInstance=0
08:36:11.221 (11650) SetWaitCursor 0
08:36:11.238 (11801) RestoreWaitCursor 0
08:36:11.239 (15339) ExecMacroFile D:\Soft\秀丸\秀丸メール関連\状態保存マク
ロ\SetFolderFavorist.mac
08:36:11.239 (15409) entered
08:36:11.239 (   0) ExecCommandMacroSub D:\Soft\秀丸\秀丸メール関連\状態保存
マクロ\SetFolderFavorist.mac
08:36:11.245 (13581) FrameWnd:TKINFO 8
08:36:11.245 (4403) TKINFO 8
08:36:11.245 (13590) FrameWnd:TKINFO 8 return 00000001
08:36:11.245 (   0) CDdesub::Disconnect
08:36:11.245 (   0) CDdesub::Disconnect nothing to do
08:36:11.246 (15457) leave
08:36:11.469 (5387) xViewAreaCombo Saved 0
08:36:12.691 (25953) StopAutoDownTimer()
08:36:12.912 (5387) xViewAreaCombo Saved 0
08:36:14.152 (10837) WM_CLOSE: ShowWindow SW_HIDE result=24
08:36:14.152 (11650) SetWaitCursor 0
08:36:14.163 (11801) RestoreWaitCursor 0
08:36:14.163 ( 457) CFolderProp::SaveAll()
08:36:14.195 (2958) SaveExpandState tick=32 account=15 folder=31,34,34
08:36:14.195 (2964) IsProcessExitable: TRUE
08:36:14.195 (9730) PostQuitMessageSub
08:36:14.195 (12122) DefWindowProc done nRet = 00000000
08:36:14.195 (2964) IsProcessExitable: TRUE
08:36:14.195 (3181) Exit process loop
08:36:14.195 ( 457) CFolderProp::SaveAll()
08:36:14.198 (3638) DeleteIconOnTaskbar()
08:36:14.248 (22000) ViewDlgProc WM_DESTROY
08:36:14.349 (6383) will Cleanup()
08:36:14.350 ( 460) ImapIdle::TerminateAll
08:36:14.350 (6436) HidemaruMail exit pid=20984
----------------------------------------------------------------------------
-----------------------------

使用環境:Windows11Pro 23H2
          秀丸メールVer.7.34 Beta2


以上宜しくお願い致します。

[ ]
RE:12861 秀丸メールの終了が遅くなりましNo.12862
秀まるお2 さん 24/09/26 09:51
 
連絡いただいたdump.txtから想像するに、ウィンドウの座標や履歴に関する情報をレ
ジストリに保存するのが遅くなってるように思います。

ウィンドウ座標などをレジストリに保存する時に、偶然ではあるんですが、

    xViewAreaCombo Saved 0

って記録が出てまして、それが2回あって、両方とも、その直後のログが1.15秒くら
い後になってます。なのでレジストリの書き換えにそのくらい時間がかかってて、そ
れが2回あるせいで2秒ほど遅くなってる気がします。

僕のマシンだとこの時間は0.13秒程度でした。


■テストお願い

全般的な設定の「上級者向け - 履歴」の所で履歴を全部消去して、それで少しマシ
になるか試してみてほしいです。さらには不要な履歴は作らないようにすると、今後
もある程度は速くなると思います。

テストした結果速くなるかどうか教えて欲しいです。

■対策その1

テストをして高速になるなら、やはりレジストリの書き込みが遅いせいだと思うので、
そうであれば、レジストリの最適化をするフリーソフト類を使う手があるにはありま
す。

ただし、マイクロソフトがそういうフリーソフト類の使用をお勧めしてないようでは
あります。

「windows10 レジストリ 最適化」とか「windows11 レジストリ 最適化」でネット検
索すると、そういうフリーソフト類は出てきます。

■秀丸メール側で対策

レジストリの書き換えが遅いってことであるならば、ですが、秀丸メールがレジスト
リを書き換える時に、「以前の値と比較して変化がある物のみレジストリに書き込
む」って処理をする手があります。

レジストリへの保存が2回実行されてしまってるのも関係するので(これはまた別に
原因があると思いますが)、少なくともこの処理を入れれば1秒は速くなるとは思い
ます。

とりあえずテストお願いした結果で考えてみたい所です。

あと、たしかにレジストリの書き換えで遅いのかどうか、次のβ版ではその辺もはっ
きり分かるようにdump.txt出力するように直してみます。

[ ]
RE:12862 秀丸メールの終了が遅くなりましNo.12864
dagloss さん 24/09/26 11:14
 
秀まるお2様

早速のご教示、有難う存じます。


■テストお願い

テストした結果速くなるかどうか教えて欲しいです。

※テスト結果ですが、体験的には劇的に速くなったようには感じませんでしたが、
  念の為、dump.txt の件の部分を転記致します。
----------------------------------------------------------------------------
---------------------------------------

10:37:58.928 (12012) syscommand 0xF060
10:37:58.928 (12118) will DefWindowProc
10:37:58.928 (10776) QueryEndSessionInter message=16
10:37:58.929 ( 292) CommandImapAppendSent cWantImapUploadSent == 0
10:37:58.929 (11650) SetWaitCursor 0
10:37:58.972 (11801) RestoreWaitCursor 0
10:37:58.973 (2380) CloseGrepHot fAll=1 cGrepDlgInstance=0
10:37:58.973 (2411) CloseGrepHot exit, fGrepProcessing=0, cGrepDlgInstance=0
10:37:58.973 (11650) SetWaitCursor 0
10:37:58.989 (11801) RestoreWaitCursor 0
10:37:58.989 (15339) ExecMacroFile D:\Soft\秀丸\秀丸メール関連\状態保存マク
ロ\SetFolderFavorist.mac
10:37:58.989 (15409) entered
10:37:58.989 (   0) ExecCommandMacroSub D:\Soft\秀丸\秀丸メール関連\状態保存
マクロ\SetFolderFavorist.mac
10:37:58.995 (13581) FrameWnd:TKINFO 8
10:37:58.995 (4403) TKINFO 8
10:37:58.996 (13590) FrameWnd:TKINFO 8 return 00000001
10:37:58.996 (   0) CDdesub::Disconnect
10:37:58.996 (   0) CDdesub::Disconnect nothing to do
10:37:58.997 (15457) leave
10:37:59.222 (5387) xViewAreaCombo Saved 0
10:38:00.255 (25953) StopAutoDownTimer()
10:38:00.476 (5387) xViewAreaCombo Saved 0
10:38:01.519 (10837) WM_CLOSE: ShowWindow SW_HIDE result=24
10:38:01.519 (11650) SetWaitCursor 0
10:38:01.529 (11801) RestoreWaitCursor 0
10:38:01.530 ( 457) CFolderProp::SaveAll()
10:38:01.564 (2958) SaveExpandState tick=32 account=15 folder=31,34,34
10:38:01.564 (2964) IsProcessExitable: TRUE
10:38:01.564 (9730) PostQuitMessageSub
10:38:01.564 (12122) DefWindowProc done nRet = 00000000
10:38:01.564 (2964) IsProcessExitable: TRUE
10:38:01.564 (3181) Exit process loop
10:38:01.564 ( 457) CFolderProp::SaveAll()
10:38:01.564 (3638) DeleteIconOnTaskbar()
10:38:01.602 (22000) ViewDlgProc WM_DESTROY
10:38:01.707 (6383) will Cleanup()
10:38:01.707 ( 460) ImapIdle::TerminateAll
10:38:01.707 (6436) HidemaruMail exit pid=15244

----------------------------------------------------------------------------
---------------------------------------

対策その1

レジストリ関連では、CCCleaner を使用していましたが、ご案内頂きましたソフトも
試してみたいと存じます。
テスト結果は上記 Dunp.txt よりご判断頂きましたら、少しは速くなっているという
事でしょうか?

■次のβ版ではその辺もはっきり分かるようにdump.txt出力するように直してみます。

何時もお手間をお掛けして恐れ入ります。
何卒宜しく、お願い申し上げます。






[ ]
RE:12864 秀丸メールの終了が遅くなりましNo.12865
秀まるお2 さん 24/09/26 11:39
 
せっかくテストしていただいた所ですみませんが、dump.txtの結果的にはほとんど変
化なしのようです。

今さらソースコード見直してみた所、履歴を消去しても履歴を保存する処理自体は同
じように動作してしまうようでした。設定で履歴を取らないように設定しても、やは
り空の文字列を保存するような処理になってるようでした。(履歴がレジストりに残
ってしまうとまずいのであえてそうしてるんだと思う)

とりあえず、レジストリの書き換えが遅いことは間違いないと思うので、不必要なレ
ジストリの書き換えを減らすように工夫して一回β版アップロードさせていただきま
す。少々お待ちください。

[ ]
RE:12865 秀丸メールの終了が遅くなりましNo.12866
dagloss さん 24/09/26 14:44
 
秀まるお2様

工夫頂けるという事で、本当にありがとう御座います。
お手間をお掛けして申し訳御座いませんが、
何卒宜しく、お願い申し上げます。

今更ながら、2つ以前位のβ版をインストールした後から終了が
遅いと感じたのですが、しかとはいつからという記憶が有りません。
それ以前は、普通に終了していましたので、お尋ね申し上げました次第です。

様々な環境がある中で、私ども固有の事象かも知れませんのに、
ご対応くださり、本当に助かります。

[ ]
RE:12866 秀丸メールの終了が遅くなりましNo.12867
秀まるお2 さん 24/09/27 11:47
 
秀丸メール終了時のレジストリ書き換えを最小限(変化のある物のみ保存)にしてβ
版アップロードしました。

32bit版:
https://hide.maruo.co.jp/software/bin3/hmmail734b3_signed.exe

64bit版:
https://hide.maruo.co.jp/software/bin3/hmmail734b3_x64_signed.exe

僕のマシンでも気持ち速くなったような気がします。

dump.txtにログ出力も追加しました。

10:40:28.228 (5558) SaveWindowParam
10:40:28.228 (6089) SaveTabStateSub
10:40:28.228 (6101) SaveWindowParam done write=0 skip=397 fail=0 base=399

みたいな記録が出ます。「write=0」なら何もレジストリ書き込みしてないことにな
ります。例えば秀丸メールを起動して何もせず終了させるとこんな感じになると思い
ます。

どうでしょうか。

[ ]
RE:12866 秀丸メールの終了が遅くなりましNo.12868
dagloss さん 24/09/27 15:10
 
秀まるお2様

有難う御座いました!
快適すぎるくらいです。
ひょっとして、閉じるボタンを押す前に閉じた・・・
は、言い過ぎですけれども、それ位スピードアップ
体感できました。

本当に、有難う御座いました。

念の為
----------------------------------------------------------------------------
-----------------------
15:04:52.162 (12012) syscommand 0xF060
15:04:52.162 (12118) will DefWindowProc
15:04:52.162 (10776) QueryEndSessionInter message=16
15:04:52.162 ( 292) CommandImapAppendSent cWantImapUploadSent == 0
15:04:52.162 (11650) SetWaitCursor 0
15:04:52.203 (11801) RestoreWaitCursor 0
15:04:52.205 (2380) CloseGrepHot fAll=1 cGrepDlgInstance=0
15:04:52.205 (2411) CloseGrepHot exit, fGrepProcessing=0, cGrepDlgInstance=0
15:04:52.205 (11650) SetWaitCursor 0
15:04:52.222 (11801) RestoreWaitCursor 0
15:04:52.222 (15339) ExecMacroFile D:\Soft\秀丸\秀丸メール関連\状態保存マク
ロ\SetFolderFavorist.mac
15:04:52.222 (15409) entered
15:04:52.222 (   0) ExecCommandMacroSub D:\Soft\秀丸\秀丸メール関連\状態保存
マクロ\SetFolderFavorist.mac
15:04:52.230 (13581) FrameWnd:TKINFO 8
15:04:52.230 (4403) TKINFO 8
15:04:52.230 (13590) FrameWnd:TKINFO 8 return 00000001
15:04:52.230 (   0) CDdesub::Disconnect
15:04:52.230 (   0) CDdesub::Disconnect nothing to do
15:04:52.231 (15457) leave
15:04:52.232 (5558) SaveWindowParam
15:04:52.247 (6089) SaveTabStateSub
15:04:52.247 (6101) SaveWindowParam done write=0 skip=377 fail=0 base=399
15:04:52.254 (25953) StopAutoDownTimer()
15:04:52.254 (5558) SaveWindowParam
15:04:52.269 (6089) SaveTabStateSub
15:04:52.269 (6101) SaveWindowParam done write=0 skip=377 fail=0 base=399
15:04:52.293 (10837) WM_CLOSE: ShowWindow SW_HIDE result=24
15:04:52.293 (11650) SetWaitCursor 0
15:04:52.304 (11801) RestoreWaitCursor 0
15:04:52.304 ( 457) CFolderProp::SaveAll()
15:04:52.328 (2958) SaveExpandState tick=31 account=15 folder=31,34,34
15:04:52.328 (2964) IsProcessExitable: TRUE
15:04:52.328 (9730) PostQuitMessageSub
15:04:52.328 (12122) DefWindowProc done nRet = 00000000
15:04:52.328 (2964) IsProcessExitable: TRUE
15:04:52.328 (3181) Exit process loop
15:04:52.328 ( 457) CFolderProp::SaveAll()
15:04:52.328 (3638) DeleteIconOnTaskbar()
15:04:52.365 (22000) ViewDlgProc WM_DESTROY
15:04:52.467 (6383) will Cleanup()
15:04:52.467 ( 460) ImapIdle::TerminateAll
15:04:52.467 (6436) HidemaruMail exit pid=22564
----------------------------------------------------------------------------
-----------------------

本当にありがとう御座いました。
助かりました。



[ ]
RE:12868 秀丸メールの終了が遅くなりましNo.12870
秀まるお2 さん 24/09/27 18:45
 
結果的に僕のマシン上でも高速になったので、他のユーザー様にも有益な修正になっ
たと思います。ありがとうございます。

[ ]