0

我正在调试一些 Windows API 和堆栈跟踪显示Unloaded_hext.dll。我找不到这个 DLL。即使没有符号,WinDbg 也会输出这个 DLL 名称。进程监视器无法找到此 dll。

为什么以“卸载”为前缀?这是由 WinDbg 完成的还是有什么技巧?

在运行lm命令时,我可以hext.dll在卸载模块部分看到。但是,如果它被卸载,那么为什么它会被堆栈跟踪显示?

4

1 回答 1

1

WinDBG 即使在模块被卸载后也能跟踪它们,以使调试更容易。

通常,那些卸载的模块不应该出现在堆栈跟踪中。如果他们这样做了,卸载发生在模块仍在使用时(FreeLibrary 不会阻止)。因此,这种过早卸载是您代码中的一个错误。

于 2009-06-22T08:47:56.053 回答