正确支持WPF的混淆器

Ree*_*sey 31 .net wpf obfuscation baml .net-4.0

.NET的一个好的混淆器工具有哪些选项可以支持.NET 4.0中的WPF?

特别是,哪些混淆工具处理WPF程序集中的BAML重写,并处理BAML中的跨程序集引用?

虽然大多数混淆器列出了"WPF"和".NET 3.5"或".NET 4"支持,但实际上,它们无法重写嵌入式BAML引用,导致使用WPF的跨程序集调用被不正确地处理.这可以防止它们在大规模WPF应用程序中使用.

ogg*_*gre 5

自3.5版以来,Eazfuscator.NET进行了正确的WPF重命名。我们付出了巨大的研发努力来创建一个可行的解决方案。XAML重命名由专用的分析器提供支持,该分析器考虑了XAML的绑定,命令和其他所有方面,以提供精确的结果。您可以尝试一下。


Aka*_*ava 4

WPF 在很大程度上依赖于反射,更改属性名称可能无法正常工作,因为绑定将无法正常工作。混淆器工具不会检测 ViewModel 等中可能存在的代码中的字符串引用。无论你做什么。像 Blend 这样的工具无论如何都可以从 BAML 创建模板和样式的副本,这就是引入 BAML 而不是从 xaml 创建可执行代码的原因。

由于 BAML 只是一种图形表示,因此在运行时人们还可以使用 Snoop 工具来识别控件的运行时视图。

但是,有一个免费工具可以在文件后面生成 WPF 代码作为纯 CLR 对象图表示形式而不是 BAML,http://xamlgenerator.codeplex.com/(免责声明:此 xamlgenerator 是我公司创建的免费工具)