如何防止所有类的重命名,dotfuscator中的接口

时间:2016-10-21 10:31:11

标签: c# c#-4.0 obfuscation dotfuscator

我正在关注MSDN网站https://msdn.microsoft.com/en-us/library/hh977082(v=vs.107).aspx,因为我使用随VS免费提供的dotfuscator来模糊我的c#代码。

在我的C#项目中,我使用了依赖注入(Castle.Windsor),因此我的应用程序在混淆后崩溃了。

我正在考虑不重命名我的任何类和接口名称,包括构造函数,但让他们的方法,变量重命名将解决问题。我试图在dotfuscator中为此设置排除规则但仍然无法这样做。

您能否告诉我们如何设置排除规则以防止重命名类和接口名称及其构造函数,但是让他们的方法和变量在dotfuscator中重命名?我正在使用VS2015附带的dotfuscator。

1 个答案:

答案 0 :(得分:2)

Renaming documentation for Dotfuscator Community Edition提供了有关如何重命名此类排除项的一般说明。听起来,在这种情况下,您应该添加类型排除。这将只排除类型本身(及其构造函数)而不排除任何方法/字段/属性。类型排除也适用于接口。

如果您尝试排除所有类型和接口,可以将排除规则标记为正则表达式规则,并使用.*匹配所有名称。如果您尝试仅排除类型的子集,请注意指定完全限定的名称。

您可以使用“预览”按钮查看将被排除的内容。 (请注意,构造函数不会显示为被排除,但在构建时实际上会排除它们。)

最后,Pro documentation for excluding by Type提供了有关其中某些功能如何工作的更多详细信息,因此也可能有助于查看。在大多数情况下,Pro和社区之间的功能是相同的。

完全披露:我为PreEmptive Solutions工作。