一字違いで大違い 
さて。
公開した直後に,ML に気になる投稿が。

Windows2000 のはずが,WindowsNT 5.0 となってますが,
とのこと。

WindowsNT 5.0--- これって,Windows2000 のことなんだよね。
間違いではない(笑)
WindowsNT 4.0 の後継が Windows2000 になるので,
内部バージョン的には WindowsNT 5.0 というのが Windows2000 なんである。

ただ,Windows2000 のことを,誰も WindowsNT 5.0 なんて言わないわけで,
だから,でるも,Windows2000 は,Windows2000 って表示するようにした。
--- はず(笑)
なのに,なんで WindowsNT 5.0 って出ちゃう??
間違いじゃないにしても,自分のソースの通りでないのは気持ち悪い。

なので,ソースを見直す。
うーん?
おかしいなぁ。
if の振り分けは合ってる。
うちでは NT が無いために試せないから,
どうしても机上の論になるけども,
どー考えても,Windows2000 は Windows2000 と表示されるロジックだ。

ああ。
なんでなんだろう。

話が逸れるけど,HSP ってのには,デバッグモードってのがあって,
変数と変数に入っている値などを見ることが出来るモードがある。
たまに変数の設定をとちると,とんでもない数値が入ってたりして,
それが判るようになってるのだ。
ただし,正しく終わってしまうと,デバッグモードが消えてしまうので,
ところどころに stop 命令を入れて,いったんそこで止まらせながら,
になるんだけれど。
で,問題の NT の分岐のところに,stop を入れてみる。
んがしかし(笑)
考えてみたら,うちは NT じゃないんだな。
ってことは,どの変数の値も,0 になる(爆笑)
これじゃぁ,なんの意味もない。
あぅ(涙)
全部 0 かぁ。
と,見てたら…。
あれ?
なんだこれ。
見慣れぬものが,一つ。
いぁ,見慣れぬものって気づいたのは,たまたま変数を
全部文字列型で受けてる中で,一つだけ数値型になってるのがあったので
同じ 0 が入っているにしても,違和感を感じたってのが正しいんだけど。

なんで,数値型変数がこんなところに出て来るんだろう
カーソルで動かして,NT の振り分けをしているところの変数を見ていく。
うん?
あれ?
えーと?(爆笑)
変数名をコピーして,ソース内で検索。
まさかと思うけど…。

あああああああああああああああ(爆笑)
やっぱり。

実は,wntver という変数を使っていたのだけど,
一カ所だけ wintver になってた(爆笑)
判ります?一文字「i」が何故か入ってたのだ。

これ,どー考えても,打ち間違えたんだなぁって
人間なら判るはず。
だけどね,PC ってのは,打ち込まれたものを,そのまま受け取る。
ということは,wntver と wintver は,違うもの,として,とらえるのだ。

そう。NT の振り分けがうまくいってなかったのは,
たった一文字「i」が入って,タイプミスしてた wintver の所為だった!(涙)

考えてみれば,一番初期に,「gettime」を「getime」って打ち間違えていた でるだ。
未だにミスタイプが多い,というのは情けない限りだけど,
人間誰だって打ち間違いはあるのだ(涙)
でも,PC は許してくれない。
ああ,厳しい(涙)
「これって,打ち間違いじゃない?」って指摘してくれるデバッグモード求む(涙)
# あるかいっ(笑)

ということで,wintver を,ちゃんと wntver と打ち直したら,
ちゃんといったらしい(笑)<振り分け
あーあ,ほんとに,ミスタイプには気をつけなきゃ。

さぁ,めでたしめでたし。
今度こそ,エンドロールだ(爆笑)



しかし!
やっぱりそうは問屋が卸さない(汗)

出て来るんですよ。まだまだ。
これはもう,根性据えてやるっきゃないって感じで。
えぇ,闘いですとも。
でるふぃ VS Windows (爆笑)
どちらかが倒れるまでの勝負っす!

てことで。次回にまだまだ続く,んである(笑)


本日の感想 タイプミスだけは気を付けよう>おーる

April 20, 2001