输出程序集中的方法名

本文关键字:方法 集中 程序 程序集 输出 | 更新日期: 2023-09-27 18:28:28

我正在使用Visual Studio 2013针对.NET 4.5编译一个项目,然后使用ILDASM再次检查它。

我注意到,Release中的构建仍然包含方法名和变量名,我认为这些应该在发布构建中删除,或者我需要一个obsfuscator来做到这一点?

输出程序集中的方法名

您需要一个obsfuscator来隐藏方法和成员名称,编译器应该剥离局部变量名称,但可以使用反射出现的任何名称都会被保留,包括类和接口名称、公共和私有方法、公共和专用字段。

至于方法名称,编译器不知道您的程序集是否会在另一个项目中使用,因此方法名称的保留是合乎逻辑的。虽然变量名只能在定义它们的方法中使用,但我想它对调试(无论是Debug还是Release)都很有用,而且它们确实占用了不多的空间。

我的建议是,不要使用模糊处理程序,除非你的应用程序包含安全关键代码(然后,我仍然建议只模糊该代码,而不是其他方法)。这对于调试和读取异常要好得多。