Windows9x/me で動かないバグを解消!
いやぁ,やりました.ようやくバグを発見しました.普通にリソースの中に無効なアイテム(アクセラレータでした)が含まれていたためでした.ライブラリのリンクとか相当探しまくってたんですが,まさかこんなところにバグがあったとは.
今回はあまり活用らしいこともできていなかった CVS がついに役に立ってくれました.
前日の掲示板でのやりとり等により,Alpha5:OK,Alpha6:NG という結果を得ました.
んでもって,ほんっと偶然にも,Alpha5とAlpha6をコミットしていた(その次がなぜかAlpha10くらいに飛んでいたので相当危なかった!)おかげで,両バージョンのソースを取り出すことが出来ました.CVS さん,初の大活躍!
実際,ソースからビルドしてみても,Alpha5 は動くが Alpha6 は動かない.ここまでくればしめたものです.
しかしながらよくよく考えると,このバグを見つけたのは偶然でした.確かにリソースが怪しい,とは思ってたんですが,むしろ Alpha6 でプロパティのダイアログを追加していたので,その部分だろうと思い,秀丸で RC ファイルを開いたわけです.んで,Alpha5 との差分を取っていたら,アクセラレータの部分を含めて5カ所ほど違う部分を見つけ,Alpha6 に対してそれぞれ元に戻して Windows98 上で動かしたところ,なんと無効なアクセラレータのアイテムが原因だったという.