本来写了蛮多的,结果因为重启了一下机器导致写的东西都没了。 然后再回想之前写了什么,反而更像是把知识提炼了一番。 关于字符 字符什么的只要记住.net里面都用的Unicode编码就好。字符和数字之间转换用强制转换是最简单且高效的, 字符串是引用类型,存在与堆上,然而同一般的对象用newobj这个IL
知识点:c#编译器,编译成中间代码(IL) 知识点:将数变为一个数组的元素放进另一个数组,并调用举例;
分类:
其他好文 时间:
2016-03-21 16:35:29
阅读次数:
119
在用VisualStudio新建项目之后,进行编译,总会发现.pdb文件:在CLRViaC#中讲到,.pdb文件是用来调试用的。pdb是ProgramDatabase的简写,它能够进行sourcecode和IL之间的映射。ThecompilerproducesaProgramDatabase(PDB)fileonlyifyouspecifythe/debug(+/full/pdbonly)switch.T..
分类:
数据库 时间:
2016-03-21 02:00:09
阅读次数:
293
上一篇提到了最基本的IL代码,应该是比较通俗易懂的,所以有了上一篇的基础之后,这篇便要深入一点点的来讲述了。 首先我必须再来说一些重要的概念: Evaluation Stack(评估栈):这是由.NET CLR在执行时候自动管理的记忆体,每一个线程都有自己的评估栈,也就是说,它是用来存储临时变量的线
分类:
其他好文 时间:
2016-03-20 21:09:37
阅读次数:
255
//附加 //C#源码,被C#编译器,编译成执念代码(IL) //int16=short.....±32000 //int32=int.......±21亿 //int64=long......±922亿亿3372万亿 //IndexOf()...LastIndexOf...返回若为-1,没有找到
分类:
其他好文 时间:
2016-03-18 13:34:53
阅读次数:
197
1、先用IL DASM工具将所需要修改的DLL进行文件转换成IL文件,其中*.il文件就是代码,*.resources,这个文件就是资源。 2、找到需要修改的resources文件 3、将新生成的文件替换掉原来的文件 4、在CMD中,重新编译DLL,语法如下: c:\windows\microsof
分类:
其他好文 时间:
2016-03-17 14:45:20
阅读次数:
251
这是一篇关于IL和反射Emit的文章(所以不喜欢IL或者Emit的就没必要往下看了),要求读者对IL和Emit工作原理较了解。所有分析IL均在Visual Studio 2010 SP1下编译生成。(其他编译器不一定100%结果一样但逻辑上肯定是等价的,希望读者学到“为什么”,而不是“是什么”)。
转载地址:http://www.cnblogs.com/yangmingming/archive/2010/02/03/1662546.html 一:Ildasm.exe简介 这一微软VS自带工具,在上一篇博文《初识Ildasm.exe——IL反编译的实用工具》中已经做了详细介绍,这里不再鳌述; 二
分类:
其他好文 时间:
2016-03-07 20:58:25
阅读次数:
275
转载地址http://www.cnblogs.com/yangmingming/archive/2010/02/03/1662307.html Ildasm.exe 概要:(路径:C:\Program Files (x86)\Microsoft SDKs\Windows\v数字.0\bin) 一.前
分类:
其他好文 时间:
2016-03-07 20:57:20
阅读次数:
230
接上篇:30分钟?不需要,轻松读懂IL,这篇主要从IL入手来理解async/await的工作原理。 先简单介绍下async/await,这是.net 4.5引入的语法糖,配合Task使用可以非常优雅的写异步操作代码,它本身并不会去创建一个新线程,线程的工作还是由Task来做,async/await只
分类:
其他好文 时间:
2016-03-04 10:32:07
阅读次数:
484