2002-03-17 [長年日記]

風邪

風邪を引いたのであまり進まず。

ATOK Pocket

確定取り消しで、なんで色々と小細工をしたのか思い出せないと書いたけれど、ちょっと思い出した。Atok PocketがCtrl+BSを処理して確定取り消しをしたにもかかわらず、VK_PROCESSKEYに変換せずにアプリケーションにVK_BACKを送りつけてくるため、アプリ側のCtrl+BSの処理とかぶってしまうためだった気がする。でも、これはATOK Pocketのバグな気がする。WinCEのMSIMEではどうなんでしょう?

これを回避しようとすると、やっぱりIMEがOnの間はアプリ側のCtrl+BSの処理(単語削除)をやらないようにするしかないかな。

メモリリーク

QMAIL 2.1.xで巡回するとメモリリークするという話が。確かに前から気になっていて調べようと思っていたところだったので、ちょっと調べてみた。検出ツールなんかでは検出されず。

色々考えてみたところ、DLL化したのが問題かなと。ライブラリ側のメモリプールがDLLのインスタンス毎に存在するようになってしまっているために、QMAIL.DLLとQMAILPOP.DLLとQMAILIMAP.DLLでそれぞれにメモリのプールがされていてそのせいで巡回するたびにメモリ使用量が増えているような感じ。

と、あたりをつけてDLLにしないでひとつのEXEにまとめてみた。そうしたら、やっぱり使用量が増えなくなった。今のやり方のままでDLLに分割するのは無理ということか。。。メモリプールの部分をひとつのDLLの中にまとめてやるようにすれば大丈夫だと思うけれど。

というわけで、とりあえず、2.1.xはDLLに分離するのを止める方向で。


トップ «前の日記(2002-03-15) 最新 次の日記(2002-03-18)»