windows - 调用 LoadLibrary(...) 失败,Win32 错误 0n126 使用 Windows 调试器工具 windbg; w3wp.exe IIS 工作进程故障

标签 windows debugging iis asp-classic windbg

我正在使用 windbg 分析来自转储文件来源的单独计算机上的内存转储。在该工具的命令行中,我输入了以下内容:

.loadby w3core w3core

这是错误:

调用 LoadLibrary(c:\windows\system32\inetsrv\w3core.dll) 失败,Win32 错误 0n126“找不到指定的模块。”请检查您的调试器配置和/或网络访问权限

更新:我创建转储文件的进程是 w3wp.exe。我认为这是针对 IIS 的。这是 IIS 工作进程。所以,w3core.dll 一定与 IIS Worker Process 有关。

为了回顾我的步骤,我使用了调试诊断工具来监视计算机 A 上特定进程的崩溃。(计算机 A 正在运行 Windows Server 2003 Standard 32 位,IIS 6;未安装 ASP.NET。 ) 这次崩溃创建了一个内存转储文件。我将此转储文件复制到安装了调试诊断工具和 windbg 的计算机 B。在计算机 B 上,我在调试诊断工具的高级分析选项卡中添加了转储文件,然后单击“开始分析”按钮。分析总结报告:

the module c:\WINDOWS\system32\inetsrv\32.core.dll has caused an access violation     
exception(0xC0000005) when trying to read from memory location 0x53534553 on thread 4

我打开了 windbg 并添加了符号文件路径

SRV*downstream_store*http://msdl.microsoft.com/download/symbols

然后,我打开转储文件并输入上面的命令,它吐出上述错误。我可以保证该文件确实存在。

问题是什么?是不是因为我在计算机 B 上调试,而实际上转储文件来自计算机 A?除此之外,我不确定自己做错了什么。

为什么我不能加载这个模块?非常感谢您的帮助。

最佳答案

假设您可以找到 dll(如果找不到,也可以解释一下),请尝试在 depends ( http://www.dependencywalker.com/) 中加载 w3core。如果它缺少任何相关的 dll,它应该会显示在那里。

关于windows - 调用 LoadLibrary(...) 失败,Win32 错误 0n126 使用 Windows 调试器工具 windbg; w3wp.exe IIS 工作进程故障,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10322617/

相关文章:

android - 在 kindle fire 上调试安卓应用

Java 客户端在通过 F5 BIG-IP 负载平衡器与 IIS 服务器进行 SSL 握手期间收到 "connection reset"

asp.net - IIS波浪号漏洞问题

iis - 引用 IIS 网站时如何使用传递给 msi 的命令行参数

windows - C++ -'Stream' 未声明的标识符

windows - gnuplot:如何获取包含非 ANSI 字符的文件列表?

windows - 在 Windows 上使用 gfortran 创建 DLL

C Windows - 获取 IPv4 带宽使用统计信息

java - Jmap 错误 "More than one non-option argument"

.net - SQL CLR 调试获取 "Canceled by user"