掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
コンパイル後に作られるmapファイルに書かれている<linker-defined>とは何ですか? (ID:52565)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
開発環境:WinXP(SP1) VC++6.0 はじめまして。 現在、ソケット通信アプリケーションを作成しています。 そのアプリケーションが、例外処理を起こし、その現象が再現せずに困っています。発生したエラーというのは、 「例外unknown software exception (0x80000003) がアプリケーションの0x0046fcd0で発生しました」 という内容です。 0x80000003というアドレスは、レジストリのルートキーであるHKEY_USERSを指し示すことは分かりました。 では、アプリケーションの0x0046fcd0とは、どんなところだろう?と思い、コンパイル時にmapファイルを出力するようにし、見てみました。 そして、0x0046fcd0が含まれているアドレスを見たのですが、どうもよく分かりませんでした。書いてある内容は、 Preferred load address is 00400000 Start Length Name Class 0001:00000000 0005a65dH .text CODE 0001:0005a660 000077eaH .text$x CODE 0001:00061e4a 0002f406H .textbss CODE ← ここが問題 0002:00000000 00012b24H .rdata DATA 0002:00012b28 00005b63H .xdata$x DATA (中略) 0001:00059848 ?AfxGetModuleState@@YGPAVAFX_MODULE_STATE@@XZ 0045a848 fmfc42d:MFC42D.DLL 0001:00061e50 __enc$textbss$begin 00462e50 <linker-defined>←ここ 0001:00091250 __enc$textbss$end 00492250 <linker-defined> 0002:0000001c ??_C@_0CD@KNKL@?$CK?$CK?$CK?$CK?$CK?$CK?$CK?$CK?$CK?$CK?5CAccept?3?3CAccept?$CI?$CJ?5Ou@ 0049301c Accept.obj 0002:00000048 ??_C@_0CC@MALE@?$CK?$CK?$CK?$CK?$CK?$CK?$CK?$CK?$CK?$CK?5CAccept?3?3CAccept?$CI?$CJ?5In@ 00493048 Accept.obj 0002:00000070 ??_7CAccept@@6B@ 00493070 Accept.obj このように書かれていたのですが、自分が分かるのは、 1.何かしらのコード(プログラム)領域である 2.リンカが何やらdefinedしている といった、どうでもいい事くらいです。 長くなってしまいましたが、自分が教えていただきたいことは、 1.<linker-defined>とは、どういう意味なのか? 2.CODEクラスが3つあるが、なぜ3つに分かれているのか?1つではないのか? と言うことです。 すると、例外が発生した原因が何か分かるかなと思っています。 ネットや本で色々調べてみたのですが、あまり情報が載っていなくて、こまり、書き込ませていただきました。 どうか、みなさんの知恵をお貸しください! 宜しくお願いします!
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.