.net 在哪里可以找到和下载不同版本的mscorwks.dll和mscordacwks.dll?

.net 在哪里可以找到和下载不同版本的mscorwks.dll和mscordacwks.dll?,.net,windows,windbg,debug-symbols,.net,Windows,Windbg,Debug Symbols,当我能够获得崩溃转储时,我正试图习惯使用WinDbg来解决它们,但每次我这样做时,它似乎都在要求我使用不同版本的mscorwks.dll和mscordacwks.dll,而且我并不总是能够访问转储来自的机器 除了告诉最终用户,在给我发送一个大得离谱的“迷你”转储文件的同时,他们还必须在Windows目录中查找这些文件之外,还有什么地方可以获得这些文件的不同版本的副本吗?WinDbg似乎无法通过Microsoft的symbols服务器找到它们。您应该从捕获此转储的计算机中获取mscordacwks

当我能够获得崩溃转储时,我正试图习惯使用WinDbg来解决它们,但每次我这样做时,它似乎都在要求我使用不同版本的mscorwks.dll和mscordacwks.dll,而且我并不总是能够访问转储来自的机器


除了告诉最终用户,在给我发送一个大得离谱的“迷你”转储文件的同时,他们还必须在Windows目录中查找这些文件之外,还有什么地方可以获得这些文件的不同版本的副本吗?WinDbg似乎无法通过Microsoft的symbols服务器找到它们。

您应该从捕获此转储的计算机中获取mscordacwks.dll,然后将其重命名为WinDbg期望的名称(通常将其放入WinDbg文件夹)。之后,如果重新加载转储和符号,则可以得到正确的结果

如果某台计算机恰好具有相同级别的修补程序(Microsoft修补程序),则可以从该计算机复制该文件,但通常很难

是的,如果Microsoft为我们提供了一个中心位置来下载此文件的所有版本,那么我们可能会松一口气,但在此之前,我们必须使用此解决方法

参考文献


更新其他地方提到,您可以从修补程序中提取特定版本的mscordacwks.dll。这是可行的,但通常需要时间来搜索正确的修补程序。

为什么不直接请求完全内存转储?它将包括里面的DLL,您将能够通过microsoft symbol server解析他们的PDB?我已经,我已经让他们使用microsoft的工具从获取完整转储,WinDbg仍然抱怨.dll.do!当windbg尝试加载dll PDB/exe时,sym发出噪音并发布输出。它反复提到从microsoft的symbol服务器下载.dll,然后抱怨它们“不匹配”。它给我的全部内容太长,无法发布,但它们都是这样的:SYMSRV:mscordacwks\u x86\u x86\u 2.0.50727.1433.dll from:320271字节-复制的DBGHELP:C:\Program Files(x86)\Windows调试工具(x86)\sym\mscordacwks_x86_x86_x86_2.0.50727.1433.dll\471EF72958f000\mscordacwks_x86_x86_2.0.50727.1433.dll-不匹配对于微软来说,这不是一种特别有用的做事方式,但感谢您的确认。对于来到这里的任何人,我都发布了一个相关的问题,并最终自己回答了。我提供了一种方法,可以在您自己的符号库中永久地将这些符号放入正确的路径中,这样您和所有使用同一个符号库的同事就不必在每次遇到问题时都反复这样做。对于每个不同版本的mscorwks,您只需执行一次。下面是答案,希望它能帮助别人:这是另一种只做一次的方法。您可以在文件共享上共享WinDbg和所有常用扩展名。从计算机上轻松获取并重命名mscordacwks和SOS:mscordacwks收集器