|
前々回で説明した「ユーザメッセージ」だが、あの説明は間違いだという事に気づいた。
事の始まりから説明しよう。
先日、とあるMLの会員の方からメールが届いた。 内容は、「ダイアログの中のエディットコントロールをダブルクリックするとダイアログを閉じたい」といった内容だった。 私は内心「にやり」とし、この航海日記を読むように進めた。(この時点で相当な間違いなのだが・・・) その時の心情としては、「ふっ、俺様も伊達に4ヶ月もVisual C++やってねぇぜ!」といった感じだったのだが、はっきり言って「ただのあほ」であったのに気づくのは5時間後のことである。 さて、この連載を見ている諸君!ユーザメッセージの回で、どの部分が嘘吐きなのか分かったかな? |
|
|
|
結論から言おう(何を偉そうに・・・) それは、自作応答関数の戻り値が「 void 」になっている事である。 戻り値を「 void 」にしておくと、訳のわからないエラーが出る。 しかも、しかもである!!(泣きそう)デバッグ版でコンパイルして得た実行ファイルではなんら問題無いのである。 リリース版にしたとたんにアウトになる。 今回は、「 上田さん 」のおかげで解決できたもののデバッグ版で大丈夫という事は・・・・ デバッグできねぇじゃねぇかぁ!>MS たしかに間違ったのは俺さ・・・俺だけどさ・・・だったらデバッグ版の時にエラァ出してよね・・・(涙) |
|
|
|
で、その解決方法だが、戻り値を「RESULT」型にすると直ります。
これは、参考書にもVC++のヘルプにも書いてあります。
今日からおいらは嘘吐きという名前をしょって生きていく事になる。 あぁ、人生・・・・(謎) 今日、友人に「 やぁぁい、嘘吐きだぁぁぁぁぁぁ 」と言われてしまった。。。 いやぁ、すまんです!まちがえやした!>この連載を読んでいる諸君 さらに、まだバグがあるのだがそれについては次回述べる・・・(まだあるの?) |
|
|