ある操作を行った際に経験しているお客様によるプログラムを開発しました。これは常に同じ場所と同じデータで発生しているわけではなく、さらに、ローカルの開発マシンでもテスト仮想マシンでも発生していません (すべての開発機器がありません)。
これらの条件を考慮して、クラッシュの原因となっている関数を確認するために、MAP ([プロパティの構成] -> [リンカー] -> [デバッガー] でオプション /MAP を使用して有効化) でコンパイルすることにしました。
私が正しく理解していれば、プログラムがクラッシュしたときにオフセット エラーをチェックしてから、列 RVA+BASE の下の MAP を検索する必要があります。
Address Publics by Value Rva+Base Lib:Object
0001:00037af0 ?PersonalizzaPlancia@CDlgGestioneDatiProgetto@MosaicoDialogs@@IAEXXZ 00438af0 f DlgGestioneDatiProgetto.obj
0001:00038000 ?SalvaTemporanei@CDlgGestioneDatiProgetto@MosaicoDialogs@@IAEXXZ 00439000 f DlgGestioneDatiProgetto.obj
実際、私のクラッシュはオフセットで発生します:
00038C90
だから私はそれがメソッドのどこかにあると考えるべきです:
MosaicoDialogs::CDlgGestioneDatiProgetto::PersonalizzaPlancia
しかし、これは絶対に可能ではないので、コンピューターが間違っている可能性はないと仮定すると、悪いことをしているのは私です。
誰かがMAPの正しい読み方を教えてくれませんか?