我有一个非常大的项目集合,其中大多数是主应用程序.EXE使用的.DLL(程序集)。我使用Dotfuscator 4.10将所有这些拼凑在一起。如果我没有将.DLL设置为“以库模式运行”,则会对接口进行模糊处理,并且应用程序无法使用它们。但是混淆过程是针对同一次运行中的所有文件完成的。那么,是否可以完全混淆库接口,期望重命名将传播到其他程序集和主应用程序?这样可以保护组件。
说清楚:假设我们有一个带有公共方法A.DLL
的程序集void Hello();
。我想将它重命名(即使它是公开的)到void a:a();
和所有对void Hello();
的调用也改为a::a();
- 整个解决方案 - 在混淆过程中包括在其他程序集和主应用程序中?
更新1:我在/ clr中使用C ++ / CLI,即混合使用托管/非托管代码。
答案 0 :(得分:2)
您的EXE是否包含在您的混淆项目中?重命名方法并始终如一地调用这些方法以使一切仍然有效是Dotfuscator重命名的核心功能。只要调用重命名方法的所有内容都包含在您的混淆项目中,它就应该完全按照您的描述工作。