Essential.NET
changmingxie
这个作者很懒,什么都没留下…
展开
-
Types and Initialization
at most one type initializer, and it must take no parameters and return no value. It is called automatically by CLR. The following shows a type initializer in C#: namespace EssentialNet { public class Customer { public static string na2010-06-05 10:19:58 · 50 阅读 · 0 评论 -
Types and Interfaces
rfaces as partitioning the set of all possible objects into subsets. Which subsets an object belongs to depends on which interfaces the object’s type has declared compatibility with. The CLR allows the concrete type to declare the methods interface forced2010-06-05 11:01:51 · 71 阅读 · 0 评论 -
Type Fundamentals
ype is first load. The CLR will allocate memory for non-static(instance) fields each time it allocates an instance of the type. By default, the exact memory layout of a type is opaque. The CLR supports two ways of declaring fields whose value is constant.原创 2010-06-25 10:37:15 · 75 阅读 · 0 评论 -
Types and Base Types
other hand, disallows direct instantiation of the type and makes it useful only as a base type. The policy for dealing with collisions between reused method names and reused field names might be different. The CLR supports two basic policies to use when原创 2010-06-25 10:38:07 · 64 阅读 · 0 评论 -
Types at Runtime
a handler to an opaque data structure that represents the object’s type. Every instance of a given type will have the same type handle value in its object header. To support down-casts and side-casts, CIL defines two opcodes: isinst and castclass. Both op原创 2010-06-28 17:11:16 · 71 阅读 · 0 评论 -
.NET程序集导入过程
2010-08-14 21:59:01 · 115 阅读 · 0 评论 -
.Net应用程序的运行过程
CorDllMain指令(根据是exe文件还是dll文件不同)。若是非托管程序,就进入到入口函数了,若是托管程序就会跳入到另一个函数中。这个函数在一个叫做MSCorEE.dll的动态链接库文件中,当安装了.net框架时就会被复制在系统目录下。系统会根据托管程序PE文件中的信息找到这个DLL,然后通过MSCorEE.dll的PE文件信息找到这个_CorExeMain函数的入口地址,然后修改刚才的JMP指令要跳转的地址,从而将控制跳转到了_CorExeMain这个函数里面去。然后,在这个函数里面,CLR被启动了2010-08-14 22:56:07 · 149 阅读 · 0 评论