1

我们决定使用 Dotfuscator 来混淆我们的代码。我们的应用程序是 Windows Phone 应用程序,我们使用的是 Dotfuscator Windows Phone Edition 版本 4.9.7000.29303。我们了解到 System.Reflection.ObfuscationAttribute 类在 Silverlight 中不可用,因此无法对某些需要排除的类型使用排除属性。我们现在计划在 dotfuscator 中使用 Rename>Exclude 选项卡并排除带有某些特定后缀的类型。在实施之前,我们创建了一个试验项目并对其进行了混淆测试。我们在测试中发现输出不符合执行规则。虽然预览窗口显示了预期的结果,但输出仍然包括那些应该被排除的类型。请参阅下面的 Dotfuscator 窗口的屏幕截图。箭头左侧的预览窗口正确显示了将从混淆中排除的阴影类型,但在箭头的右侧,相同的输出仍然混淆了这些类型。怎么了? 预览窗口显示正确的结果,但输出不正确

4

1 回答 1

1

我不完全理解你想用正则表达式完成什么,但就使用属性来控制混淆而言,你可以包含一个库。

要包含的库通常位于

C:\Program Files(x86)\PreEmptive Solutions\Dotfuscator (version and edition)\Attributes\Windows Phone\PreEmptive.ObfuscationAttributes.dll

这是一个关于如何从重命名中排除某些内容的示例:

[Obfuscation(Feature = "renaming", Exclude = true)]
public int Foo{get;set;}

您可以在此链接中找到有关使用属性控制混淆的更多详细信息,并在此处提供一般用户指南

如果您想改用正则表达式路线,您还可以查看创建自定义规则的文档。您必须为我提供更多信息,以了解您要为我做什么才能提供帮助。鉴于您的屏幕截图,一切似乎都是我所期望的。

于 2013-04-04T20:35:05.367 回答