ネットワーク サポート チームからミニ ダンプ ファイルを受け取りました。彼らは、本番ノードのサイトの 1 つで CPU 使用率が高いと不満を漏らしています。
Windows サーバーは x64 ですが、IIS アプリケーション プールは32-bit
モードで実行されています。ネットワーク/サポート担当者は、デフォルトのタスク マネージャーを使用してダンプ ファイルを作成しているため、ダンプ ファイルは 64 ビットである必要があると思います。
WinDbg x64 をダウンロードしました。次に、以下のリンクに示されている指示に従って、コードのどの部分に問題があるかを調べてみました。
ダンプ ファイルと WinDbg はどちらも 64 ビットですが、「lmvm clr」コマンドを実行すると、デバッガーに次の行が表示されます。
画像パス:C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
このコマンドを実行すると:
.loadby sos clr
pe コマンドを実行すると、「no export !pe found」が表示されます (これは、!CLRStack などの他のコマンドで発生します)。
mscordacwks.dll と sos.dll の 64 ビット バージョンを取得し、それらをシンボル フォルダーにコピーすると、ライブラリが読み込まれますが、!pe コマンドを実行すると、"Failed to load data access DLL, 0x80004005 error message!
私が間違っていることは何ですか?ネットワーク チームに .dll ファイル (sos.dll
および mscordacwks.dll) を送るように依頼し、それらをシンボル フォルダーにコピーしましたが、何も変わりませんでした。
ps同様の投稿をすべて読みましたが、何も役に立ちませんでした。