Visual Studio 2012 调试.net framework4.5源码
来源:互联网 发布:zach king 知乎 编辑:程序博客网 时间:2024/06/10 23:07
原文地址:http://www.cnblogs.com/highend/archive/2012/09/17/how-to-debug-in-net45-source.html
I:下载.NET 4.5源代码安装包
.NET 4.5 源代码的下载地址:百度网盘镜像
百度网盘地址:http://pan.baidu.com/share/link?shareid=49618&uk=2449813869
安装过程我就不详细说了,大家都懂的~呵。
II:配置Visual Studio 2012环境
点击vs菜单栏上的 工具 –> 选项 在左侧树形列表中将[调试]节点展开然后选取[符号]子节点
设置为你.NET 4.5源代码安装的目录。
注意:缓存符号哪里应该选择安装包安装完成的路径,不要使用C:\Users\{UserName}\AppData\Local\Temp\SymbolCache否则vs会自动下载源代码pdb包,很慢的。
然后选择同级的[常规]节点配置成如下图所示
至此Visual Studio 2012配置完成,如果你是用vs2010的,那么这些步骤将会相同。唯一的区别是你需要下载.NET 4.0的源码而不是.NET 4.5版本。
III:调试进入.NET 4.5源代码内部当中
进行到这里时,本人先在自己的电脑上用vs2012建立一个基于.NET 4.5的控制台应用程序,并测试以上的配置过程是否成功,至此我们继续往下看步骤流程。
建立一个控制台应用程序
编写Main入口点函数的执行代码
查看.NET 4.5源代码内部之 - DateTime.Now内部。
查看.NET 4.5源代码内部之 - new String(char[])内部
运行结果。
到目前为止,作者已经能够顺利地调试进C/S的.NET 4.5内部了。
接下来,再试一试在WebApplication的项目类型下调试进.NET 4.5源代码内部
我们继续建立了一个在.NET 4.5下的WebApplication类型的项目,但是开始调试的时候发现加载太多需要下载的dll了,出现下图的等待情况比较久的情况。。。
于是就重新开始建立一个空白的.NET 4.5 WebApplication类型的项目,就不需要引用太多的dll了。
然后添加Default.aspx和Global.asax文件,并再Global.asax.cs内打上一个断点
以方便顺利找到ASP.NET在进入System.Web.dll时的处理入口点。
下图为顺利Debug进.NET 4.5源代码内部的效果示例图,至此整编文章所要表达的核心内容已顺利表达完成。
从上图中的调用堆栈可以看到客户端请求进入到clr环境进行处理时,开始进行处理的一个环节是位于C:\dotNetFramework_src\net45\ReferenceSource\Source\.NET 4.5\4.5.50709.0\net\ndp\fx\src\xsp\System\Web\Hosting\IPipelineRuntime.cs\目录
- Visual Studio 2012 调试.net framework4.5源码
- visual studio 2008调试.net 源码
- Visual Studio 2008调试.NET Framework源码基本步骤
- 如何在Visual Studio中调试.NET源码
- .NET Framework4.5 & .NET Framework4.0
- Visual Studio.net调试javascript
- .Net多线程编程—使用Visual Studio 2012进行调试
- .Net多线程编程—使用Visual Studio 2012进行调试
- .Net多线程编程—使用Visual Studio 2012进行调试
- .Net多线程编程—使用Visual Studio 2012进行调试
- 【转】配置Visual Studio调试FrameWork源码
- 配置Visual Studio 2008来调试.NET Framework源码的基本步骤
- visual studio .net /2005常见调试问题
- Visual Studio.net 调试学习笔记
- 将 Visual Studio .NET 调试器用于 ASP.NET 应用程序
- 将 Visual Studio .NET 调试器用于 ASP.NET 应用程序
- 将 Visual Studio .NET 调试器用于 ASP.NET 应用程序
- 将 Visual Studio .NET 调试器用于 ASP.NET 应用程序
- 使用rapidxml从xml文件中读取指定项(建议两层)
- UISearchDisplayController 与 UISearchBar 在IOS7的问题
- Camera显示之Hal层的适配(二)
- SNAT和DNAT
- Cassandra源代码阅读笔记
- Visual Studio 2012 调试.net framework4.5源码
- poj 2386
- Log4Net使用指南 .
- tomcat7.0运行错误
- UML类图——统一建模语言
- assert()
- HTTP报文
- 转个NX的 数据库操作类
- HttpURLConnection