反编译.NET程序和中文符号

标签 decompiling reflector

反编译.NET程序后,我看到中文符号作为变量等?我使用反射器,这是某种错误或源阻止?

最佳答案

我假设您无权访问源代码,并且您正在尝试对其他人的软件进行逆向工程。在某些情况下,这可能是合法的,但也可能会让您被起诉。

如果这是别人不希望你反编译的软件,那么它很可能已经被混淆了。这意味着至少类型和变量的所有有意义的名称都将被生成的符号所取代,而没有任何意义。中文字符的出现可能是有意为之,也可能是所使用的反编译器的副作用,但无论如何,您可以确定原始名称已被删除。

大多数混淆的代码都应用了其他转换,从而难以遵循程序的逻辑,模糊字符串或其他文字,并欺骗已知的反编译器犯错误。

底线是,如果您尝试反编译混淆的源代码,您就处于法律风险和技术挑战的领域。阈值已经提高,也许你不应该尝试跨越它。

关于反编译.NET程序和中文符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25106220/

相关文章:

c# - C++公共(public)函数语法错误

visual-c++ - XP 上的 NetValidatePasswordPolicy 问题

java - 为 Java 字节码或类图开发反编译器

c# - 重写 .Net DLL 的方法

c# - 将 .NET 3.5 程序反编译为 C#,导出问题

c# - 转到ElementAt扩展方法

c# - 修改已编译的.Net Exe

java - 查找 Java 类文件版本之间的差异

java - 命名java类文件的字母来自哪里?