有哪些更好的方法可以保护商业.NET软件不被随意复制?

该软件包的主要焦点是开发人员工具,但也有一个组件(DLL),少数开发人员希望使用自己的应用程序重新分发。 这是在.NET 3.5下运行的托管代码。

阻止其他人重用库的最简单方法是将所有类标记为“内部”,并使用InternalsVisibleTo自定义属性标记库程序集。 这允许您专门枚举哪些程序集(在您的情况下,每个开发人员工具)可以调用内部方法。 所有其他程序集(例如客户可能编写的程序集)将被拒绝访问。

如果客户确定了足够的,他们可以使用其他技术,如reflection或逆向工程IL来重用您的库。 但是这种技术阻止他们直接使用你的库。

混淆和许可是保护程序集的“标准”方法

像任何锁一样,有人可以弄清楚如何解锁它,问题是你想让它们做到这一点有多困难,而你想要在这个过程中花费多少精力/金钱

将注册人的详细信息(例如电子邮件)键入的序列号非常简单。 这样他就知道你有可能追查他背后的任何副本。

您可以查看名为Oreans WinLicense的产品。 它应该是强大的。

谢谢。

我搜索了一下,看起来你有一堆商业工具。 喜欢: eziriz

我想知道是否有任何好的开源解决方案?