是否有任何C#反编译器可以显示编码几乎与它的编写方式相同?

okr*_*okr -3 c# decompiling

我一直在使用反射器来反编译几个简单的c#应用程序,但我注意到虽然代码被反编译,但我仍然看不到它们写在VS上的东西.我认为这就是编译器用机器代码替换人类指令的方式.但是我想我会尝试一下并在这里问一下.也许有一个反编译器可以反编译并显示与原始代码几乎完全相同的编码.

SLa*_*aks 5

现有的.Net反编译器通常会尽最大努力进行反编译.

您似乎要求变量名称和行格式,这显然不会编译为IL.


Mar*_*ell 5

这是不可能的,因为有很多方法可以从不同的代码中获得相同的 IL。例如,无法知道扩展方法在声明类型上是被称为 fluent-style 还是显式。无法知道是否使用了 LINQ 与常规代码。各种隐式操作可能存在也可能不存在。删除的代码可能存在也可能不存在。许多原语(包括枚举)最多包括 4 个字节,一旦成为 IL,就无法区分。

如果您想要实际代码,请合法获取原始代码。