因此,我有一个中度到显着复杂的 WPF 应用程序,我需要通过 Dotfuscator 混淆输出程序集(专业版 - 客户端拥有许可证的版本)。
三个问题:
- 混淆过程在
OutOfMemoryException
大约 85% 的时间内崩溃 - 这需要很长时间 - 平均混淆通过大约需要56 分钟才能完成
- 从基于反射的查找到资源,有一大堆各种问题会导致应用程序因混淆程序集而崩溃。
第一个问题我可以通过命令行而不是 GUI 运行来缓解(至少它不会崩溃),如果我可以快速迭代,第三个问题就不会那么大了选项组合,而不是每个工作日进行 5 次尝试。
这真的是让我死去的总时间;有人知道任何“快速修复”的想法可以显着缩短混淆时间吗?是否有可能我所做的一些愚蠢的事情在此过程中导致某种“蒸汽锁”,从而增加了处理时间?我是否需要按客户端使用不同的混淆器?
一些细节:
- 大约。应用程序中有 38 个程序集/exe(其中可能有 5-10 个是标记为“工件”的第三方 dll,因此它们不会被混淆)
- 这个盒子是一个半强大的物理服务器,而不是虚拟机。
- 我使用配置文件来驱动混淆器,而不是单独处理每个程序集。
- 我已经在所述配置文件中标记了许多排除项,例如生成的资源
- 所有程序集都标记为“库”
任何想法和/或 SWAG 将不胜感激。