使用 Dotfuscator 社区版是否存在任何已知问题,除了它会稍微减慢执行速度?
在使用 dotfuscator 之前,我的代码中有什么需要更改的吗?
我不确定,但是一旦客户报告了在使用 dotfuscator 发布之前没有发生的奇怪行为,所以我给客户SAME版本但没有 dotfuscator,一切都恢复正常。
提前致谢。
使用 Dotfuscator 社区版是否存在任何已知问题,除了它会稍微减慢执行速度?
在使用 dotfuscator 之前,我的代码中有什么需要更改的吗?
我不确定,但是一旦客户报告了在使用 dotfuscator 发布之前没有发生的奇怪行为,所以我给客户SAME版本但没有 dotfuscator,一切都恢复正常。
提前致谢。
您应该谨慎使用 dotfuscator,并且只对需要隐藏的部分进行混淆。例如,如果您使用反射,混淆可能会破坏代码
如果您使用的是 Dotfuscator 社区版(仅支持重命名),则不会对性能造成任何影响。遗憾的是,Community Edition 中不包含可能对性能产生负面影响的转换,例如控制流混淆和字符串加密。
然而,正如 Stecya 解释的那样,重命名可能会破坏在运行时而不是在静态分析期间确定行为的各种场景。就在我的脑海中,可能破坏的场景包括使用反射(直接或间接通过例如使用 Enum.Parse)、在非代码文件(例如 XAML)中具有代码引用和自动序列化(没有显式命名数据成员)。