`
cloudtech
  • 浏览: 4612785 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

配置Visual Studio 以调试.net framework的源代码

 
阅读更多

看到.net框架代码发布了,兴奋了一下,把在VisualStudio 2008上配置的内容翻译了一下,只翻译了原文的基本步骤,高级用户篇和QA没有翻译。要欣赏原文请点击这里

基本步骤
注意,这个功能在Visual Studio 2008 Express版里不支持。
1)安装Visual Studio 2008 QFE。这个QFE只是更新一个VisualStudio调试器的DLL,以便可以获取源代码,
更多细节参加下载页面。
2)运行Visual Studio 2008依次展开Tools->Options->Debugging->General。如果你在VisualBasic Profile环境下
运行,你需要将lower left of the Options Dialog标记为"ShowAll Settings",然后继续(其它配置没有这个选项).
设置以下两个设置:
关闭"Enable Just My Code"设置
打开"Enable Source Server Support"设置

你的设置会如下面所示:

3)下一步,选择"Symbols"页,然后设置符号下载URL和缓存位置。设置以下三个配置:
设置符号文件位置为:http://referencesource.microsoft.com/symbols
设置缓存位置。保证你的账户能读写这个位置。一个好建议是将这个路径设置为
打开"Search the above locations only when symbols areloaded manually"选项
设置完毕后,应该如下图所示


设置完毕。
调试进入框架的源代码
通过这个例子,我们从一个空的C# Windows Application project开始,同样它可以在VB,Web或WPF工程上工作。创建这个工程:
在Form_Load上设置个断点:


运行你的工程命中断点,到调用堆栈窗口(CTRL+ALT+C).在调用堆栈里,右键单击System.Windows.Forms.dll,然后
选择"Load Symbols"。这样会给System.Windows.Forms程序集加载符号,大小大概10M,所以下载速度就看看你的网络连接速度怎么样了。注意:在这个过程中VisualStudio会没有任何响应的。但是,这个下载对每个程序集来说只需要一次
。这个符号(PDB)文件会缓存在你的机器上,在你刚才定义的文件夹里。


这样就会从服务器上下载这个DLL的符号了,你可以在状态栏里看到一些信息反映这个。注意:这个完成后调用帧字体会变成
黑色,并且行号也可用了。注意:在每次调试会话中你都需要右键单击然后选择"Load Symbols"(但是,第二次的时候,这个符号已经缓存在本地了,所以无需再下载它们)。要了解更多信息请欣赏下面的高级用篇。


你已经下载了WindowsForms DLL的符号,现在可以查看代码了。你可以Step In上面的的代码行,也可以在调用堆栈
里双击某一帧。在这里我们Step In(F11).
在第一次进入代码的时候,我们会显示EULA。花点时间阅读EULA,如果你同意点击ACCEPT,然后这个源代码就会下载下来。
就这样,你可以调试.net框架源代码了。


现在,对每个你想调试的程序集,只要重复上面的步骤就可以了(注意:你只会看到一次EULA,不是每次都会看到的).
有的时候,你要调试的程序集并不在调用堆栈上,比如下面这个例子:

在你调试进入Graphics.DrawRectangle,你需要加载System.Drawing.dll的符号。打开ModulesWindow(CTRL+ALT+U)。这个列表会显示调试中所有加载的模块(DLLs).在列表中找到System.Drawing.DLL,右键单击,然后选择LoadSymbols.



注意:一旦符号文件下载了,符号文件会显示在"SymbolFile"列中。
你现在可以使用F11进入Graphics.DrawRectangle的代码了。在这个case中,你会先进入PaintEventArgs.Graphics属性的代码。



分享到:
评论

相关推荐

    配置Visual Studio 以调试.net framework源代码第1/2页

    看到.net框架代码发布了,兴奋了一下,把在Visual Studio 2008上配置的内容翻译了一下,只翻译了原文的基本步骤,高级用户篇和QA没有翻译。

    如何调试.net framework的源代码

    看到.net框架代码发布了,兴奋了一下,把在Visual Studio 2008上配置的内容翻译了一下,只翻译了原文的基本步骤,高级用户篇和QA没有翻译。要欣赏原文请点击这里

    Visual Studio Code 源代码(.net).7z

    官方开放的.NetFramework4.6.1源代码, .

    Visual Studio 2010 C# 从精通到入门 全部29个章节源码

    本书全部源码包含:基础知识,指导你如何借助于Visual Studio 2010和.NET Framework Version 4.0;用C#语言来进行程序设计。你将学习C#语言的各种特性,并利用它们来构建运行于Microsoft Windows 操作系统上的应用...

    Visual Studio.Net(VS) 源码管理器

    9、 其它SourceSafe操作:读者可以从"文件"——"源代码管理"——"Microsoft Visual SourceSafe"菜单,进入"Visual SourceSafe Explorer",其中大多数主要命令基本与Visual Studio.Net相同,这里就不再累赘。...

    著名的技术交流网站clubof.net的源代码

    著名的交流网站clubof.net的源代码 此版本包含有以下内容: FrienDevApps_20081201.zip: 包含有最新版核心开发包、WebCast应用程序示例、投票应用程序示例 FrienDevDatabase_20081201.zip: 最新的核心数据库、...

    .NET 4.6 开源代码

    以.zip文件的形式下载.NET Framework的完整源代码。存档包括可在Visual Studio中打开的解决方案和项目文件。此解决方案不会构建,因为它缺少关键组件,如资源,XAML文件等,但它足以浏览Visual Studio中的源代码。

    Asp.Net服务器控件开发 源代码

    Asp.Net服务器控件开发 源代码 书中所有工程均采用Visual Studio.NET 2003进行开发,其Microsoft .NET Framework版本为1.1.4322。更详细的说明见书的“光盘使用必读”。

    基于.NET FrameWork与MS SQL Server数据库实现多人实时在线选课系统源代码+数据库+详细项目文档

    编译环境 VIsual Studio 2017 + .Net frame work 安装教程 打开Visual Studio 2017,新建Win工程 运行SQL Server数据库,建立本地数据库 在Win工程中打开新解决方案LoginIn.sln 使用说明 详细运行过程参考运行视频...

    用VB.NET克隆IE7源代码

    This is an example browser written in VB.NET using .net framework 2.0 (Visual Studio 2005). It is a tabbed web browser. It shows many examples of working with the new browser control and the loaded ...

    .NET开源代码下载地址

    以.zip文件的形式下载.NET Framework的完整源代码。存档包括可在Visual Studio中打开的解决方案和项目文件。此解决方案不会构建,因为它缺少关键组件,如资源,XAML文件等,但它足以浏览Visual Studio中的源代码。

    [源代码] ASP.NET 2.0 网站开发全程解析 (源代码)

    - [Visual Studio 版本] Microsoft Visual Studio 2013 with Update 3 - [SQL Server 版本] Microsoft SQL Server 2012 with SP2 ☆ 文件内容:☆ - [数据库] - [源代码 (优化)] - [源代码 (原书)] - [程序运行...

    [源代码] .NET Pet Shop 4.0 (精校代码)

    ☆ 程序说明:☆ The .NET Pet Shop application is designed to show the best ...- [Visual Studio 版本] Microsoft Visual Studio 2008 with SP1 - [SQL Server 版本] Microsoft SQL Server 2008 R2 with SP2

    ASP.NET 2.0 跟我一起学Visual.Studio2005 2/9

    跟我一起学Visual Studio 2005(26):源代码管理 VSS or Team Foundation? (Level 200) 课程简介:源代码控制工具是开发团队不可缺少的工具。相信各位都对Visual SourceSafe有一定的了解。和VSS相比,Team ...

    ax^3+bx^2+cx+d=0 之c#解决

    ax^3+bx^2+cx+d=0 之c#解决 用c#编程牛顿法和二分法 Microsoft® .NET Framework 1.1 版 记得下Microsoft® .NET Framework 1.1或更高...yuanma.zip是他的源代码 用Microsoft Visual Studio .NET 2003或更高的c#打开

    .NET 4.5与Visual Basic 2012高级编程(第7版) 源代码

    《.NET 4.5与Visual Basic 2012高级编程(第7版)》 一书的源代码 《.NET 4.5与Visual Basic 2012高级编程(第7版)》从头到尾介绍Visual Basic的相关知识。 首先介绍Visual Studio 2012。在《.NET 4.5与Visual Basic ...

    VisualStudio 2008-2017系统注释中文包,解决安装Visual Studio后系统注释为英文问题。

    C:\Windows\Microsoft.NET\Framework\ 和 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework 中的每一个类似 v3.5 v4.0 v4.5 v4.x 这样的文件夹中。 PS:根据经验,重点是第一个...

    极速飚车机器人0.2.3(附源代码)

    校内网应用“极速飚车”的辅助软件。 现已提供源代码下载 开发环境 Visual Studio 2008(.NET Framework 2.0)

    [源代码] ASP.NET 3.5 网站开发全程解析 (C#版本)

    - [Visual Studio 版本] Microsoft Visual Studio 2008 with SP1 - [SQL Server 版本] Microsoft SQL Server 2008 R2 with SP2 ☆ 文件内容:☆ - [数据库] - [源代码 (优化)] - [源代码 (原书)] - [程序运行说明...

Global site tag (gtag.js) - Google Analytics