.net C#反编译器如何在没有PDB文件的情况下工作? 您所在的位置:网站首页 pdb反编译 .net C#反编译器如何在没有PDB文件的情况下工作?

.net C#反编译器如何在没有PDB文件的情况下工作?

#.net C#反编译器如何在没有PDB文件的情况下工作? | 来源: 网络整理| 查看: 265

代码流更容易获得。但这些软件如何提取数据,如函数名,变量名?程序集在元数据中包含此类信息。CTS中引入了新的类型-值类型和引用类型(公共类型系统)通过类型声明以元数据表示。此外,元数据是一种结构化的方式来表示CLI(公共语言基础结构)用于定位和加载类、在内存中布置示例、解析方法调用、转换CIL(公共中间语言)转换为本机代码、实施安全性以及设置运行时上下文边界。此外,重要的是要注意,这些信息不仅可以通过这些“逆向工程”工具访问,而且可以通过Reflection访问C#(或VB)代码。例如,通过反射可以知道给定类型的方法的名称,因为它是元数据的一部分。以下是.Net Guide的摘录,解释了元数据中包含的内容:元数据以非特定语言的方式描述代码中定义的每个类型和成员。元数据存储以下信息:

程序集的说明。标识(名称、版本、区域性、公钥)。导出的类型。此程序集依赖的其他程序集。运行所需的安全权限。类型的描述。名称、可见性、基类和实现的接口。成员(方法、字段、属性、事件、嵌套类型)。属性。修改类型和成员的其他描述性元素。

这并不一定包括局部变量名,这些工具通常不能正确地对局部变量名进行反向工程。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有