经过编译后,程序变为托管模块(=IL+元数据(描述数据信息)).托管模块需要CLR才能运行.然后,将若干个托管模块合并成Assembly.若干个文件/资源的逻辑分组.最小的可重用控制单元.其含有清单来描述其含有的文件集.所以具有自描述性.加载CLR:在\System32下有MSCoreEE.dll说...
分类:
其他好文 时间:
2014-06-15 00:07:54
阅读次数:
289
对于使用var关键字声明局部变量,编译器将根据表达式来推断变量的最终的数据类型;通过dynamic表达式或变量调用成员(字段、属性、方法委托等)时,编译器将生成特殊IL代码,这些代码被称为Payload代码。在运行时,Payload代码将根据dynamic表达式或变量所引用对象的确切类型来决定最终要...
分类:
其他好文 时间:
2014-06-11 07:40:41
阅读次数:
248
名称说明Add将两个值相加并将结果推送到计算堆栈上。Add.Ovf将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上。Add.Ovf.Un将两个无符号整数值相加,执行溢出检查,并且将结果推送到计算堆栈上。And计算两个值的按位“与”并将结果推送到计算堆栈上。Arglist返回指向当前方法的参数...
分类:
其他好文 时间:
2014-06-10 16:37:06
阅读次数:
274
一直以来,对于.NET与C#之间的关系我都存在着疑惑,为此,今天专门仔细看了一下以前最容易忽略掉的书本“前言”部分,予以澄清:)
首先,c#的结构和方法论反映了.NET的基础方法论,在很多情况下,c#的特定功能取决于.net的功能,依赖于.net基类。通俗一点说, (1).net
framework...
分类:
其他好文 时间:
2014-05-30 18:10:44
阅读次数:
628
.Net组件程序设计之远程调用(一)1应用程序域我们知道我们写的C#代码是在操作系统逻辑体系结构中最上层的,然而操作系统本身是不会认识C#代码的,它只认识机器代码。那我们写的程序经过编译后是编译成IL的,是怎么运行的呢?实际是在一个托管的环境下运行的,是.NET提供的支持,操作系统是不会识别IL的,...
分类:
Web程序 时间:
2014-05-30 12:50:48
阅读次数:
294
c# 概述
C# 是一种面向对象的解释型编程语言,与java类似。与C++相比,增添了:垃圾回收(Garbage Collection);删去了:宏定义、多继承、模板。
C# 程序首先编译为中间语言,IL,Intermediate Language,再交由CLR解释执行。
.NET Framework 是一个程序开发框架,主要由 公共语言运行时(CLR)和类库 两部分组件组成。
CLR,C...
分类:
其他好文 时间:
2014-05-25 08:50:21
阅读次数:
228
.Net Framework的核心是其运行库执行环境,称为公共语言运行库(CLR)或.NET运行库。通常将在CLR控制下的代码称为托管代码。
在.Net中,编译分为两个阶段:
(1)把源代码编译为Microsoft中间语言(IL)。
(2)CLR把IL编译为平台专用的代码。...
分类:
其他好文 时间:
2014-05-11 21:38:34
阅读次数:
230
这里讲的并非如何去破解Openquant (this is not a crack of
Openquant),本文的方法也仅供研究。如果有人要用于商业目的,最好还是去买一个License。解决过期的办法如下:1.使用ILDASM将
“SmartQuant.dll” dump 成 il 文件2.找到...
分类:
其他好文 时间:
2014-05-10 01:01:33
阅读次数:
406
转。字段和属性的区别。首先从两者的声明上来看,公共字段只是类用public修饰符所公开的简单公共变量,而属性则是对字段的封装,它使用get和set访问器来控制如何设置或返回字段值。由于属性的实质是方法(get或set方法),在IL(Intermediate
Language,是·NET框架中中间语言...
分类:
其他好文 时间:
2014-05-08 12:39:47
阅读次数:
243