0

私はいくつかのWindowsAPIをデバッグしており、スタックトレースはを示していますUnloaded_hext.dll。このDLLが見つかりません。シンボルがない場合でも、WinDbgはこのDLL名を出力します。プロセスモニターはこのdllを見つけることができません。

'unloaded'のプレフィックスが付いているのはなぜですか?これはWinDbgによって行われますか、それともトリックはありますか?

lmコマンドを実行するhext.dllと、アンロードされたモジュールのセクションが表示されました。ただし、アンロードされている場合、スタックトレースで表示されるのはなぜですか?

4

1 に答える 1

1

WinDBG は、アンロードされた後でもモジュールを追跡して、デバッグを容易にします。

通常、これらのアンロードされたモジュールはスタック トレースに表示されません。その場合、モジュールがまだ使用されている間にアンロードが行われました (FreeLibrary はそれを防ぎません)。したがって、この時期尚早なアンロードはコードのバグです。

于 2009-06-22T08:47:56.053 に答える