Visual Studio 2012 调试.net framework4.5源码

原文地址: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

image

安装过程我就不详细说了,大家都懂的~呵。

II:配置Visual Studio 2012环境

点击vs菜单栏上的 工具 –> 选项 在左侧树形列表中将[调试]节点展开然后选取[符号]子节点
image
设置为你.NET 4.5源代码安装的目录。 
注意:缓存符号哪里应该选择安装包安装完成的路径,不要使用C:\Users\{UserName}\AppData\Local\Temp\SymbolCache否则vs会自动下载源代码pdb包,很慢的。

然后选择同级的[常规]节点配置成如下图所示 
image
至此Visual Studio 2012配置完成,如果你是用vs2010的,那么这些步骤将会相同。唯一的区别是你需要下载.NET 4.0的源码而不是.NET 4.5版本

III:调试进入.NET 4.5源代码内部当中

进行到这里时,本人先在自己的电脑上用vs2012建立一个基于.NET 4.5的控制台应用程序,并测试以上的配置过程是否成功,至此我们继续往下看步骤流程。 
image
建立一个控制台应用程序 

image
编写Main入口点函数的执行代码 


image
查看.NET 4.5源代码内部之 - DateTime.Now内部。 


image
查看.NET 4.5源代码内部之 - new String(char[])内部 

image 
运行结果。

到目前为止,作者已经能够顺利地调试进C/S的.NET 4.5内部了。

接下来,再试一试在WebApplication的项目类型下调试进.NET 4.5源代码内部


我们继续建立了一个在.NET 4.5下的WebApplication类型的项目,但是开始调试的时候发现加载太多需要下载的dll了,出现下图的等待情况比较久的情况。。。 

image

于是就重新开始建立一个空白的.NET 4.5 WebApplication类型的项目,就不需要引用太多的dll了。


image 
然后添加Default.aspx和Global.asax文件,并再Global.asax.cs内打上一个断点 

image 
以方便顺利找到ASP.NET在进入System.Web.dll时的处理入口点。 
下图为顺利Debug进.NET 4.5源代码内部的效果示例图,至此整编文章所要表达的核心内容已顺利表达完成。 
image
从上图中的调用堆栈可以看到客户端请求进入到clr环境进行处理时,开始进行处理的一个环节是位于C:\dotNetFramework_src\net45\ReferenceSource\Source\.NET 4.5\4.5.50709.0\net\ndp\fx\src\xsp\System\Web\Hosting\IPipelineRuntime.cs\目录 


image

感谢下载 Microsoft .NET Framework 4.5 注意:Windows 8 和 Windows Server 2012 包括 .NET Framework 4.5。因此,您不必在这些操作系统上安装此软件。 .NET Framework 4.5 是一个针对 .NET Framework 4 的高度兼容的就地更新。通过将 .NET Framework 4.5 与 C#、Visual Basic 或 F# 编程语言结合使用,您可以编写 Windows 应用程序。.NET Framework 4.5 包括针对 C#、Visual Basic 和 F# 的重大语言和框架改进(以便您能够更轻松地编写异步代码)、同步代码中的控制流混合、可响应 UI 和 Web 应用程序可扩展性。.NET Framework 4.5 添加了针对其他功能区域(如 ASP.NET、Managed Extensibility Framework、Windows Communication Foundation、Windows Workflow Foundation 和 Windows Identity Foundation)的大量改进。.NET Framework 4.5 提供了更高的性能、可靠性和安全性。 有关 .NET Framework 4.5 的这些功能及其他功能的详细信息,请参见 .NET Framework 开发中心网站。 注意:.NET Framework 4.5 可再发行组件包于 2012 年 10 月 9 日更新,此更新更正了与数字证书上时间戳不正确相关的问题,此问题导致由 Microsoft 生成并签署的文件上的数字签名过早到期。对于之前安装过 .NET 4.5 可再发行组件包(2012 年 8 月 16 日发行)的客户,我们建议安装此经过更新的 .NET 4.5 可再发行组件包。有关此问题的详细信息,请参见 Microsoft Security Advisory 2749655。(来自官网)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值