0

dbgeng.dll を使用して、システム全体のクラッシュ ダンプを 1 つロードする 1 つのアプリケーションを作成しました。(!vad) のような WinDbg コマンドのいくつかを使用したい - そのためには、exts.dll、ext.dll、kext.dll、kexts.dll などの他の dll が必要です。これらの dll がすべてあり、_NT_DEBUGGER_EXTENSION_PATH が適切に設定されています。WinDbg GUI を使用すると、.chain コマンドで、これらの dll がすべて読み込まれていることがわかりますが、コードから実行しようとすると、これらの dll が読み込まれていることがわかりません。また、Execute (.load....) を使用してこれらの dll をロードしようとすると、エラーがスローされます - 「LoadLibrary('...') の呼び出しに失敗しました。Win32 エラー 0n193」。私も !load を試しました - どちらも私のコードでは機能しませんでした。しかし、すべてが GUI で完全に機能します。これらすべての dll を自分の C++ コードにロードする方法がわかりません。

誰でもここで私を助けてくれませんか? 助けていただければ幸いです。

-arb

4

1 に答える 1

0

エラー 193 エラー 193 が表示される場合は、通常、32 ビット アプリケーションに 64 ビット dll をロードしようとしている (またはその逆) ことを意味します。

windbg がインストールされているのと同じディレクトリから dbgeng.dll をロードしてください。その後、次の方法ですべての windbg コマンドを使用できるようになります。IDebugControl::Execute

于 2011-05-13T15:31:57.980 に答える