VC6.0でソフトを開発中です。
デバッグモードでソフト終了時に、
例外処理 (初回) は ABC.exe (TEMP.DLL) にあります: 0xC0000005: Access Violation。
というよく見かけるエラーが出たので、例外が起きた場所で停止して原因を特定しようとしたのですが、
混合モードで
678ED25F movaps xmm0,xmmword ptr [esi]
678ED262 movaps xmm1,xmmword ptr [esi+10h]
678ED266 lea esi,[esi+20h]
と、ソースコードのないところしか出てきません。
これはどういった意味なのでしょうか?
ここから先、原因を特定するにはどのようにすればよいでしょうか?
MFCプログラムの開発は多少経験がありますが、あまり詳しくありません。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
サポートも終わっているVC6ってのも厳しいところですが……
>例外処理 (初回) は ABC.exe (TEMP.DLL) にあります: 0xC0000005: Access Violation。
>というよく見かけるエラーが出たので、例外が起きた場所で停止して原因を特定しようとしたのですが、
Access Violationでは、発生したところと原因の位置が違い過ぎます。
ので、その方法ではチェックできません。
# たとえば…ポインタに不正な値を入れていた(原因)としても、それがAccess Violationとして表面化する(エラー発生)のはそのポインタの内容を参照した時です。
>と、ソースコードのないところしか出てきません。
>これはどういった意味なのでしょうか?
API内部だったり、ライブラリの中だったりするとソースは出てこないでしょう。
>ここから先、原因を特定するにはどのようにすればよいでしょうか?
ポインタ関係で変な操作しているところがないか…とか、そういう探し方でしょうかねぇ……。
あちこちにTRACE()入れて、どこまで進んでいるか…って調べるのもありかも知れません。
>デバッグモードでソフト終了時に、
動的確保して、オーバーランやアンダーランしたとか、解放し忘れたとか、そういうところとかありませんか?
プログラム終了時の後始末関係でエラーになったのではないかと推測されます。
ご回答ありがとうございます。
>Access Violationでは、発生したところと原因の位置が違い過ぎます。
>ので、その方法ではチェックできません。
そうなんですね・・・具体的な例を示して頂き助かります。
やはりポインタ操作でミスというのが一番濃厚でしょうか。
動的確保に関する処理をもう一度洗い直してみます。
最後になりましたが、お礼が遅くなってしまい申し訳ございませんでした。
ご丁寧にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
python エラー
-
エクセルのエラーメッセージ「4...
-
Excelのエラーで困ってます。
-
HEWを使用しているのですが、こ...
-
バッチからsqlplusの接続エラー...
-
適切な変換関数が存在しない???
-
デバッグ中のエラーのことで教...
-
fortranでプログラムを実行する...
-
VB2008で定数に色の設定をした...
-
visual C++ でビルドの中止がで...
-
RightとLeft関数のライブ...
-
error C3867 関数呼び出しには...
-
Handlesについて
-
strcatについて
-
ビルド失敗 指定されたファイ...
-
Microsoft Visual Studio Profe...
-
レコードセットをcloseする所で...
-
visualstudioでコンパイルでき...
-
DLL関数を使ったプログラム
-
c++でスレッド処理
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
python エラー
-
エクセルのエラーメッセージ「4...
-
Excelのエラーで困ってます。
-
適切な変換関数が存在しない???
-
fortranでプログラムを実行する...
-
バッチからsqlplusの接続エラー...
-
HEWを使用しているのですが、こ...
-
VB2008で定数に色の設定をした...
-
デバッグ中のエラーのことで教...
-
Handlesについて
-
Visual Studioのstrcpy_sについて
-
visual C++ でビルドの中止がで...
-
sys/time.hのインクルードがで...
-
ビルド失敗 指定されたファイ...
-
ビルドが失敗してしまいます
-
コンパイルできません。
-
ACCESSのDate関数のエラー表示...
-
RightとLeft関数のライブ...
-
LPCWSTRとchar
-
BC30002: 型 'ListItem' が定義...
おすすめ情報