惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

A
About on SuperTechFans
Cloudbric
Cloudbric
C
CERT Recently Published Vulnerability Notes
G
GRAHAM CLULEY
V
Vulnerabilities – Threatpost
C
Cisco Blogs
T
Tenable Blog
P
Privacy International News Feed
T
The Exploit Database - CXSecurity.com
I
Intezer
AWS News Blog
AWS News Blog
IT之家
IT之家
博客园 - 司徒正美
C
Cybersecurity and Infrastructure Security Agency CISA
博客园 - 【当耐特】
The Hacker News
The Hacker News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Spread Privacy
Spread Privacy
S
SegmentFault 最新的问题
博客园 - Franky
人人都是产品经理
人人都是产品经理
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
V
Visual Studio Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
H
Hacker News: Front Page
Latest news
Latest news
Scott Helme
Scott Helme
腾讯CDC
宝玉的分享
宝玉的分享
大猫的无限游戏
大猫的无限游戏
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
A
Arctic Wolf
S
Securelist
雷峰网
雷峰网
The GitHub Blog
The GitHub Blog
Project Zero
Project Zero
Google DeepMind News
Google DeepMind News
P
Palo Alto Networks Blog
F
Fortinet All Blogs
Schneier on Security
Schneier on Security
云风的 BLOG
云风的 BLOG
Security Archives - TechRepublic
Security Archives - TechRepublic
The Last Watchdog
The Last Watchdog
WordPress大学
WordPress大学
MongoDB | Blog
MongoDB | Blog
L
LINUX DO - 最新话题
S
Schneier on Security
NISL@THU
NISL@THU
Jina AI
Jina AI
M
MIT News - Artificial intelligence

博客园 - iceboundrock

Introduction to the Reactive Extensions for JavaScript文章集合(收集贴) 美化VS2010在远程桌面/无法启动硬件加速渲染的机器下的字体显示 CCR源码分析-CCR架构 CCR相关的Channel 9视频 DSS简介 也许你还不知道的一些关于App Domain的事 Common UNIX directories 几篇优化.net动态调用性能的文章 安装TFS 2008备注 Windbg点滴 MySQL Connector/Net 5.20安装后无法在VS2008中正常使用的问题 LAMP周边点滴 并行与并发编程学习心得 并发和协调运行时 其它并发方法 与非CCR代码互操作 失败处理 迭代器 任务调度
CCR源码分析-分析环境准备
iceboundrock · 2009-11-16 · via 博客园 - iceboundrock

由于CCR的源码并没有直接公开,所以我们需要借助一些工具来窥探它的秘密。             

分析CCR需要如下的工具

MS Robotic Studio Express 2008R2,这个就不用解释了,安装它就是为了获得CCR

Reflector & FileDisassembler,Reflector有两个作用,一个是用来把CCR的dll文件反编译到C#语言,第二个是直接对CCR进行一些分析,而这些分析在VS中并不容易。FileDisassembler是Reflector的一个插件,用来把反编译的结果导出为一个C#工程。

Visual C# 2008 Express or Visual Studio 2010 beta2(推荐,因为VS 2010大大增强了多线程调试能力)

以上工具皆可合法的免费获得

CCR源码和例子程序

Microsoft.Ccr.Core.dll是我们本次要研究的对象。为了分析和调试的方便,我们需要把它用Reflector和FileDisassembler反编译。注意,反编译后的源码可能有些问题,下面记载了几个比较重要的修改:
1. Resource文件。我们需要先删除Reflector生成的Resource1.cs,然后新建一个名为Resource1.resx的资源文件,把Reflector生成的Microsoft.Ccr.Core.resx中的字符串全部复制到Resource1.resx中,最后删除原来的Microsoft.Ccr.Core.resx
2. Dispatcher.cs中有两个静态变量的初始化顺序不正确,需要吧TraceSwitchCore的声明和初始化语句放在文件最顶端。

Sample Code,为了统一起见,我选择了MSDN Mag中的这篇文章中的代码。
解压Sample Code后,用VS创建一个CCRDemo的project,把解压得到的代码添加到CCRDemo项目中,再把反编译得到的CCR源码工程也加入这个Solution中,最后给CCRDemo添加CCR的引用。如果能编译并运行CCRDemo,则说明我们的分析环境已经构建好了。