例如,假设我想使用充气城堡 http://www.bouncycastle.org/csharp/在我的 DLL 中。由于我想简化部署,因此我使用 ILMerge 来组合MyDll.dll
and BouncyCastle.Crypto.dll
生产MyDllMerged.dll
。我用/internalize
在 ILMerge 中标记,以便客户不会使用我的 Bouncy Castle。
如果我的消费者EndUser.exe
也使用 Bouncy Castle,他会看到“Org.BouncyCastle...TypeFoo
已经定义在MyDllMerged.dll
”。因此,他注定不能自己使用他的那个图书馆。
除了内部化之外,还有什么方法可以告诉 ILMerge 重命名程序集中的所有命名空间吗?或者有其他方法可以解决这个问题吗? (我想要not必须分别分发“合并”版本和“未合并”版本。)
一种方法是使用混淆器(SmartAssembly、Dotfuscator 等)仅混淆生成的程序集的 Org.BouncyCastle 命名空间。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)