2016-08-31 7 views
1

私は、実行時に多くのコードを生成するプログラムで作業しています。 (私はこのプログラムのソースコードを持っていませんが、プラグインを作成しています)。WinDbgで「ダイナミック関数テーブルエントリを読み取ることができません」というメッセージを無効にすることはできますか?

プログラムがハングすると、私はWinDbgでそれに入り込み、すべてのスレッドのスタックトレースを取得しようとします~* k 。分以上 - - だけでなく、スタックトレースなど、私も

Unable to read dynamic function table entry at 00000000`2450b580 

のラインに沿ったメッセージのページとページ(およびページなど)を取得これは、印刷に時間がかかり、それがスクロールをオーバーフローバッファーなので、ほとんどの出力が失われます。

私はこのメッセージを含むDLLを16進エディットすることでこれを回避しましたが、真剣に対応しました。このメッセージを取り除く正式な方法はありますか?

私は、問題のスレッドからの厄介なスタックトレースの準備ができています。あなたがwindbgの

の最新バージョンを実行している場合

答えて

2

注意をエンジンの初期設定を設定してみてくださいすることができます。 2つのオプションがあります。

  • あなたがこれを原因となっているモジュールわかっている場合は、レジスタへの完全なパスを追加することができます。HKLM \ Software \ Microsoft \ Windows NTの\ CurrentVersionの\ KnownFunctionTableDllsレジストリが
  • キーあなたは無効にすることができますそれと一緒に.settings set EngineInitialization.VerifyFunctionTableCallbacks=false

2番目のオプションは現在のセッションでのみ無効にします。それを永久にしたい場合は、.settings saveに従うことができます。

+0

.settingsは新しいコマンドのようです。それはdocumented [オンライン](https://msdn.microsoft.com/en-us/library/windows/hardware/dn925473(v=vs.85)asp.aspx)ですが、私はWinDbg 6.2のヘルプでそれを見つけることができません。あなたはそれがいつ紹介されたか知っていますか? –

+0

申し訳ありませんが、わかりません。 – Dono

+0

だから、私は答えを受け入れることに私を悩ませている、だから私は誰と主張するのだろうか?私はそれ以来Windowsを使い続けてきましたが、試してみる時間がありませんでしたが、この答えは確かに聞き取れます;) –

2

あなたは、これがセキュリティ機能ですので、ご自身の責任でそれを無効にすることを

0:000> dx Debugger.Settings.EngineInitialization.VerifyFunctionTableCallbacks 
Debugger.Settings.EngineInitialization.VerifyFunctionTableCallbacks     : true 
0:000> dx Debugger.Settings.EngineInitialization.VerifyFunctionTableCallbacks = false 
Debugger.Settings.EngineInitialization.VerifyFunctionTableCallbacks = false : false 
0:000> dx Debugger.Settings.EngineInitialization.VerifyFunctionTableCallbacks 
Debugger.Settings.EngineInitialization.VerifyFunctionTableCallbacks     : false 
+0

dxが新しいコマンドであるようです。これは、[オンライン](https://msdn.microsoft.com/en-us/library/windows/hardware/dn936815(v=vs.85).aspx)に記載されていますが、WinDbg 6.2のヘルプでは見つかりません。あなたはそれがいつ紹介されたか知っていますか? –

+0

ここをクリックしてください:https://channel9.msdn.com/Shows/Defrag-Tools/Defrag-Tools-138-Debugging-dx-Command-Part-1 and https://channel9.msdn.com/Shows/Defrag- Tools/Defrag-Tools-139-Debugging-dx-Command-Part-2を参照してください。 – Dono

+1

@thomas dxがWindows 10のsdk/ddk/debuggerビルドでプッシュされました。 (10。****** 5.8.6)年後には – blabb

関連する問題