1. 什么叫.net平台
.NET框架是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境。.NET框架的目的是便于开发人员更容易地建立Web应用程序和Web服务,使得Internet上的各应用程序之间,可以使用Web服务进行沟通。
最底层:
.net框架基于Windows和COM+services。COM+services是我们经常讲变动的商业逻辑和数据存取动作包装在组件中,COM+ 就是来集中管理这些组件的。所以.net的项目一般都是运行在Windows环境下的。
CLR层:
CLR(Common Language Runtime)公共语言运行库,是所有应用程序都要使用的编程基础,他如同一个支持.net应用程序运行和开发的虚拟机。
基类库:
基类库代表了.NET框架的核心,是.net提供的原始功能的封装
ADO.NET和XML:
用于数据的交互
CLS层:
CLS(Common Language Specification)是公共语言规范,主要用于实现多种语言之间的互操作性,是公共类型系统的子集。它负责资源管理(内存分配和垃圾收集等),并保证应用和底层操作系统之间必要的分离。CLS是一种语言必须支持的最小规范要求。如果把公共方法限制为CLS,那么支持.NET的所有语言就都可以使用我们的类!
2.如何对.net平台下的exe进行反编译
(1)exe
exe译作可执行文件,是程序的入口文件。一般程序的逻辑顺序都位于exe中
(2)dll
dll是动态链接库文件,又称“应用程序拓展”。编程人员为了防止dll文件被修改,将代码模块化封装成dll,类似于api。
反编译过程:
工具:De4Dot:是一个开源的脱壳/反混淆工具(针对某些exe和dll加壳无法反编译)
Reflector:这个功能强大的NET反编译工具。
过程:De4Dot是命令行工具,所以需要各位熟悉如何使用命令行。在命令行打开之后,对于一般的程序直接输入以下命令: De4Dot 目标程序全路径 便可以脱壳完成。
本次未使用De4Dot。
过程: 打开Reflector --> 打开反编译文件 --> 编译成功 --> 保存代码 --> 使用VS打开
注意:反编译后的exe文件大概率无法运行,出现乱码形象。
原文地址:https://www.cnblogs.com/cchenyang/p/11416652.html