ヘルプがヘボ過ぎる・・。

VB6・・。そこそこやられてます。特にMSDN
せっかくトピックス見つけた!と思っても、『なんだよっ*1』みたいな。
データベースの接続等のメソッド探してて、
MSDNを彷徨った結果、目的のメソッド名を見つけて、
じゃあ、このメソッドのヘルプは?と入力してみると・・。
メニュー - ××でデータベースを新規に作成します。
とか全く関係ない文言がチョロチョロと書いてあって終わりみたいなページがちらほら。
どうみても手抜いてねえか?と叫びたい。
説明だけとか、シグネチャだけとか普通にあるもんなあ。
エディタの検索機能が貧弱なのには驚いたが、ヘルプがヘボ過ぎて絶句。
検索も一つずつしか見れないし・・。
.Netみたいな参照先を一覧表示とかがないので探すのが大変!


それ以前に、今見ている*2ものが15年前に作られた化石級である事に
今日気づいた。
コード見てたらコメントに95/..なんて書いてあって・・。
1995年!?まだパソコンじゃなくてファミコンで遊んでたよぐらい古いよ。
オレはトレジャーハンターかっ!*3


変数が全部グローバルでPublicで検索もメモ帳と対して変わらないので解読に時間がかかる。
更にVB6の配列って初期化できないらしい。
なんか宣言しただけで、普通にifなんかに使ってて、
「えっ!?どこで値いれてんの?」と必死に探しても見つからなくて、
アワワ・・。となっていたがヘルプを見るとどうやら規定値で勝手に初期化されるらしい。
あとは、変数側はIntegerで宣言しつつ、使っているところはBooleanで判定してたり・・。
最初からBooleanにしろよ!と言いたいが、
もしかしたらこれを作った人間が元々C使いだったのかもしれない。
なんて思いながらソースを眺めるのもロマンを感じつつ一興かも*4
たしかFalseが0扱いでTrueが1か-1?非ゼロなのは覚えているが値までは思い出せない。


名前も一応、当時のプロジェクト内での規則らしいネーミングだが、
処理や変数内容と全く関係ない、なんらかのコードみたいな名前なので、
それは変数なのか、配列なのか、関数なのかまったく見当がつかない。
VBって配列の要素が()だから更にややこしいんだよな。
if X_WSDF(R_I_I) = FALSE then ...
みたいな感じで書いてあって、関数に投げて戻り値が・・
とか考えて一応、定義先を見ると、実はただの配列でした!
というオチに orz(←こういう格好したくなる。 )


しかし一部検索が切れちゃう関数*5があるんだよな。
別EXEからそのモジュールの関数を使っているのか?
てか、VB6ってそんな事ができるのだろうか??


う〜ん。曲者です。VB6。

*1:三村風

*2:改修対象システム

*3:意味不明

*4:んなわけないか

*5:関数名で検索を繰り返して行くと、どこにも使われていない関数がある。でもこの関数がないと必要な値が取れなかったりする