miau's blog?

| 1 |

2004年 3月 19日 (金曜日)

VBReport

- VB6 on miau's blog?
TYPersonal2 で配布されてるアプリケーションで、VBプロジェクトの構成を見ることができる。
関数の呼び出し関係がツリービューで表示されるので、他人の書いたプロジェクトで流れを把握したときなんかに便利。

・・・のだけど、例えば

Private Sub Hoge()
.
.
MsgBox("Hoge() でエラーが発生しました")
End Sub


みたいなコードがあると、Hoge()→Hoge() と再帰呼び出しを行ってると判断されて、ツリービューが無駄に深くなってしまう。(つまり、文字列判定を行っていないのだ)

今回のプロジェクトでは、「エラー処理の際は関数名を出力する」という決まりごとがあるようで、すべての関数で上記のように無駄な解析が行われてしまう。
こうなると解析には数十分かかるわ、完成したツリーも可読性が悪いわで使い物にならない。

幸いこのアプリケーションはソースも配布されてるので、ちょっといじってみました。
[Read More!]
01:54:03 - miau - No comments - No Trackbacks - Permalink

VBReport

- VB6 on miau's blog?
特殊なケースにも対応しておいたので備忘録っぽく。
[Read More!]
03:23:39 - miau - No comments - No Trackbacks - Permalink

2004年 3月 30日 (火曜日)

Graphviz

- VB6 on miau's blog?
3月19日あたり、VBReport を使って VB のプログラムを解析してたわけだけど。

ツリー形式だと処理の流れはわかりやすいけど、ノード数が膨大になるので処理の概観がわかりにくい。1関数1ノードで、親:子が多:1になれるような図が書ければずいぶんすっきりしそうなもんだけど・・・。

とか考えてたら、友人が教えてくれました。

Graphviz

テキストファイルでリンク状態を定義しておいて、それをビジュアル化してくれるソフト、らしい。
(詳しくは dot user's guide(PDF) あたりを参照のこと)

さてさて、実験開始。
[Read More!]
01:29:53 - miau - No comments - No Trackbacks - Permalink
| 1 |