似たような質問をたくさん読んだのですが、自分の問題が何であるかを正確に答えることができないようです。
64ビットWindows2008で実行されていた32ビットアプリケーションから一連のミニダンプを取得しました。32ビットVistaBusinessの32ビットVisualStudioはそれらにまったく触れないので、私はWinDbgでそれらを開こうとしています。
正確に対応する.pdbファイルはありません(この特定のリリース以降にのみ保存を開始しました)が、同じマシンで同じコードを使用して.pdbsをビルドしています。ミニダンプを作成した正確な実行可能ファイルにもアクセスできます。
.pdbsを実行可能ファイルと一致させることができるChkMatchと呼ばれる気の利いた小さなアプリケーションを見つけました...(ChkMatchによる)唯一の違いは年齢だったので、新しい.pdbsを元の実行可能ファイルと一致させました。
ただし、WinDbgにロードすると、「不一致のpdb」と表示されます。これは、設定.symopts+0x40したので、とにかくロードしようとします。次に、警告が表示されます。
*** WARNING: Unable to verify checksum for myexe.exe
実行!lmi myexeしてみると、実際、実行可能ファイルのチェックサムは実際にはゼロでした。少し調べてみると、実行可能ファイルは/releaseチェックサムを持つフラグを使用してビルドされている必要があることがわかりました。それはすべてうまくいっていますが、正確に時間を遡って再構築することはできません(ただし、そうした場合は、元の.pdbsを確実に保存します:-P)。
ここでできることはありますか?少しばかげているようですが、少なくともコールスタックを取得するのに十分なものをここで一致させることはできません。