如何在 clr.dll 或 mscoree.dll 中调试

发布于 2024-09-14 17:47:40 字数 336 浏览 2 评论 0原文

我按照这些步骤操作,以便能够在 .Net 框架中进行调试代码。这对于框架的某些部分(例如 System.Drawing.dll)效果很好,但对于其他部分(clr.dll、mscoree.dll,...)效果不佳。

这对我来说有点奇怪,因为这些dll中的代码是由微软发布的(至少是我在调用堆栈中看到的部分)。

我正在使用 VS2010 & .Net 4.

我是否做错了什么,或者微软没有发布正确的pdb文件?

I followed these steps to be able to debug in the .Net framework code. This work well for some parts of the framework (for example for System.Drawing.dll), but not for other parts (clr.dll, mscoree.dll, ...).

This seems a bit strange to me since the code in these dlls was released by Microsoft (at least the parts I see in the call stack).

I am using VS2010 & .Net 4.

Did I do something wrong, or are the correct pdb files not released by Microsoft?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

幸福%小乖 2024-09-21 17:47:40

Microsoft 发布了整个公共语言运行时的共享源代码实现,包括 mscoree.dll,但这并不是真正的 .NET 框架的源代码。

另一方面,您获得的 System.Drawing.dll 等源代码是 .NET 框架的真正源代码,但您无法通过这种方式获得运行时代码。

以下是 SSCLI(也称为 Rotor)的下载:http://www.microsoft.com/downloads/details.aspx?FamilyId=8C09FD61-3F26-4555-AE17-3121B4F51D4D&displaylang=en

有关差异的更多说明:SSCLI 2.0 (ROTOR) 和 .NET 之间有什么区别?

Microsoft released a shared-source implementation of the whole common language runtime, including mscoree.dll, but this isn't the source code that goes into the real .NET framework.

On the other hand, the source code you've obtained for System.Drawing.dll etc. is the real source code to the .NET framework, but you can't get at the runtime code this way.

Here's the download for SSCLI, otherwise known as Rotor: http://www.microsoft.com/downloads/details.aspx?FamilyId=8C09FD61-3F26-4555-AE17-3121B4F51D4D&displaylang=en

More explanation on the differences: What is the difference between SSCLI 2.0 (ROTOR) and .NET?

梦巷 2024-09-21 17:47:40

我认为 VS 允许您仅调试框架的托管库。如果您确实需要调试 CLR 的非托管(本机)代码,您应该使用 WinDBG,但这要复杂得多......

I think VS allows you to debug only managed libraries of the framework. If you really need to debug the unmanaged (native) code of the CLR you should use WinDBG, but this is way more complex...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文