·
tar.Zを作る / Tar32.DLLでDumping objects / MonaOS作者さんの日記
tar.Zを作る
Tar32.DLLを使ってtar.Zを作ろうと思ったいたらcompress圧縮はLZWアルゴリズムを使っていて特許問題のため展開のみで圧縮がサポートされていなかった。
幸い(?)LZWの特許自体は6月に期限切れになっているので自前でコードを書くことにした。
Tar32.DLLでDumping objects
デバッグモードでビルドして実行したらデバッグウインドウにメモリの内容がダンプされたのでメモリリークしてるんじゃないかとはらはらしたが、ソースを追いかけてみるとデバッグ用の出力でメモリリークじゃなくて一安心。
tar32api.cppのTar関数内の以下の個所
_CrtMemCheckpoint(&memstate);
ret = tar_cmd(_hwnd,_szCmdLine,_szOutput,_dwSize);
_CrtMemDumpAllObjectsSince(&memstate);
// check memoryleaks.
// (the first time call happen memory-leak becaus of C/C++ runtime.)
MonaOS作者さんの日記
http://d.hatena.ne.jp/higepon/
日記そのものも面白いし、コメントのやねうらおさんの公開コードレビューも貴重だ。