【環境】
・Windows2000 SP3
・VC++6.0

メニューを画面に表示する簡単なプログラムを作成したのですが、Windows2000やXPでは問題なく動作するもののWindows98で実行させるとOSからエラーが表示され異常終了してしまいます。質問の仕方からお伺いすることになって恐縮ですが、PGのどの部分を本文に載せて質問すれば良いのか併せてご教示いただけると幸いです。

【エラー内容】
このプログラムは不正な処理を行ったので強制終了されます。
終了しない場合は、プログラムの製造元に連絡してください。

MENUのページ違反です。
モジュール :MENU.EXE、アドレス: 0167:0041be71
Registers:
EAX=011b42a0 CS=0167 EIP=0041be71 EFLGS=00010246
EBX=0066f74c SS=016f ESP=0066f6a8 EBP=0066f6f4
ECX=00000000 DS=016f ESI=00008770 FS=1dc7
EDX=81850ab4 ES=016f EDI=0066f700 GS=0000
Bytes at CS:EIP:
8b 41 38 85 c0 75 0f ff 74 24 04 ff 71 1c ff 15
Stack dump:

このQ&Aに関連する最新のQ&A

A 回答 (3件)

> Windows98で実行させると



こちらに
開発環境をインストールできない
ネットワークにはつながっている
ような場合はリモートデバッグの術でステップ実行できます。

おサル最強の味方!リモートデバッグ
http://www.netsphere.jp/osaru/rdebug/rdebug.htm



> Windows2000やXPでは問題なく動作するものの

実はエラーが出なきゃならないような処理なのに、間違って動作してしまっているというパターンが多いです(^^;

参考URL:http://www.netsphere.jp/osaru/rdebug/rdebug.htm
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
リモートデバッグを試してみます。

お礼日時:2003/10/10 16:33

あと、コンパイルのオプション。



それから、使っている関数をMSDNで調べて、Windows98がサポートしていない関数を使っていないか、調べること。

ソースは、デバッガでステップ実行し、止まったところの前後数行。この数行というのが、実は難しい。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
プログラム作成端末と実行端末が違ったのでデバッグ検証ってどうやれば良いのか調べていましたところ、リモートデバッグの回答もいただいたので、それで試して見ます。

お礼日時:2003/10/10 16:32

MFCの使用の有無


動いていた状態から動かなくなったときに追加した処理
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
MFCは使用しています。
もともと動作していたプログラムは、画面上にメニューを表示するプログラムでした。今回追加したのは、そのメニューを起動する前に、パスワード画面を表示して、パスワードが通ったら今まで動作していたメニューを表示するというように変化させました。

お礼日時:2003/10/10 16:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このカテゴリの人気Q&Aランキング