2013-08-26 30 views
0

我有一个相当大的项目集合,其中大部分都是由主应用程序.EXE使用的.DLL(程序集)。我使用Dotfuscator 4.10将它们全部混合在一起。如果我没有将.DLL设置为“在库模式下运行”,则界面被混淆,应用程序无法使用它们。但混淆过程是针对同一运行中的所有文件完成的。那么,是否有可能完全混淆库接口,期望重命名将传播到其他程序集和主应用程序?这将允许保护组件。如何混淆库(Dotfuscator)的界面?

要说清楚:假设我们有一个程序集A.DLL使用公共方法void Hello();。我希望它被重命名为void a:a();AND所有调用void Hello();的方法都改为a::a(); - 整个解决方案 - 包括其他程序集和混淆过程中的主应用程序?

更新1:我在/ clr中使用C++/CLI,即混合了托管/非托管代码。

回答

2

您的EXE是否包含在您的混淆项目中?重命名方法和对这些方法的调用始终如一,以便一切仍然有效是Dotfuscator重命名的核心功能。只要调用重命名方法的所有内容都包含在混淆项目中,它就应该按照您描述的那样工作。