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

问题描述 投票:2回答:1

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

.loadby w3core w3core

这是错误:

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

更新:我创建转储文件的过程是w3wp.exe。我认为这是针对IIS的。这是IIS工作进程。因此,w3core.dll必须与IIS工作进程相关。

为了检查我的步骤,我使用调试诊断工具来监视计算机A上特定进程的崩溃。(计算机A运行的是Windows Server 2003 Standard 32位,IIS 6;未安装ASP.NET。)此崩溃创建了内存转储文件。我将此转储文件复制到计算机B,计算机B安装了Debug Diagnostic Tool和windbg。在计算机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?除此之外,我不确定我做错了什么。

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

windows debugging iis asp-classic windbg
1个回答
0
投票

尝试在依赖(http://www.dependencywalker.com/)中加载w3core,假设你可以找到dll(如果你不能解释它的话)。如果它缺少任何依赖的dll它应该告诉你那里。

© www.soinside.com 2019 - 2024. All rights reserved.