8

我们的要求是能够将我们的DLL与ClickOnce集成。 Dotfuscator很好地完成了混淆工作,但不能在客户端使用ClickOnce部署混淆的DLL。在我们这边,我们可以完美地处理它。此外,混淆的程序集有时会崩溃我们的.NET CF应用程序。事实证明,一个解决方案可以在编译VS之前创建一个临时源并将其混淆。这确保编译的程序集可以与ClickOnce集成并与.NET CF完全兼容。混淆C#SOURCE CODE(不是程序集)的最佳工具是什么?有什么程序混淆了C#源代码吗?

+18

只是将您的代码外包给印度的一些承包商。你会立刻得到它的混淆:) – 2010-05-30 10:23:27

+0

事实上,我们正在VC++中开发一个内部的C#源代码混淆器。它允许我们用Attributes排除类和枚举。伟大的结果是混淆的源代码可以用VS编译,因此这些DLL与ClickOnce高度兼容。 – 2010-05-30 21:19:46

回答

1

查看我公司的SD C# Obfuscator

+0

它不允许我下载! – 2010-05-30 06:32:35

+0

@markattwood:发送一条消息给SD询问评估版本。 – 2010-05-30 07:26:07

+0

他们实际上甚至混淆了System.Collection命名空间,这不是我们想要的。 – 2010-05-30 21:38:51

2

{SmartAssembly} - 简单,高效,出色,不仅仅是混淆。

我们目前与ClickOnce一起使用它,它支持Compact Framework - 您只需添加一个后期构建脚本,就完成了。它还具有各种级别的安全性,因此您只需通过反复试验即可达到最佳兼容级别的保护。

+0

+1虽然我不使用它,但他们正在使用并且很满意我在工作的地方 – kenny 2010-05-30 10:45:36

+0

我想我需要清楚地解释情况。我们编译的DLL需要被混淆并发送给我们的客户。在客户方面,他们可能希望将我们的DLL与他们的产品集成并使用ClickOnce工具进行部署。问题是我们在市场上尝试过的所有混淆器工具的混淆DLL与CLickOnce不兼容。您的解决方案适合您的方面,而不是客户方。 – 2010-05-30 21:37:28

+0

@mark - 谁部署ClickOnce应用程序? – 2010-05-31 05:07:29

0

您不需要混淆源代码,只需要支持ClickOnce的程序集混淆器。 Crypto Obfuscator支持这一点 - 它在构建过程中执行混淆处理,因此最终处于ClickOnce清单和设置中的程序集已被混淆。

1

在大多数情况下,如果您提出这个问题,您正在使用错误的语言(和框架)。许多使.NET强大的东西与混淆不兼容,所以你不妨使用本地C++。

ClickOnce可能是一个例外,但我认为它仍然会严重限制您可以使用的混淆级别。

如果您确实想要保护您的IP,则应该托管一项Web服务,以便您的专有代码不会离开您的计算机。一旦你的代码运行在别人的CPU上,你就失去了隐藏它的战斗。