我想在程序运行时包装器中放置( Microsoft.CSharp , cssscript 左右)。我还想用 Eazfuscator.NET 来混淆我的代码。这会有用吗?
例如,我的程序中有 Lool2 类的对象 Lol 。 是否可以在程序的包装器中使用该对象 混淆整个解决方案后的Lol.doanything()?
我有疑惑,这就是为什么我在这里问。我无法在网上找到答案
答案 0 :(得分:1)
我不知道Eazfuscator.NET,但这些信息适用于大多数混淆器。
默认情况下,大多数混淆器会重命名非公开类型和成员以隐藏其含义。公共类型不会重命名。它们通常还具有内化功能,该功能首先将所有public
更改为internal
s(因此它们将包含在重命名功能中)。
它们还允许您禁用整体重命名或特定类型(使用System.Reflection.ObfuscationAttribute
),即使它们不是公开的。当您使用反射访问非公共成员时,这是必需的。
如果你没有使用反射,另一种方法是将应用程序与包装器合并(也是很多混淆器具有的功能)并内化所有内容。这样就可以重命名所有类型。