C#类库的开发/运行时许可机制?

C#类库的开发/运行时许可机制?,c#,licensing,class-library,license-key,C#,Licensing,Class Library,License Key,我正在开发一个.Net类库(一个数据提供者),我开始考虑如何将类库授权给潜在的购买者。所谓许可,我指的是试图阻止我的库被那些没有购买它的人使用的机制,而不是软件许可证(如Apache、Gnu等) 我从来没有处理过许可问题,在过去,我总是开发应用程序,而不是库。我不想让我的客户为难;知道不可能把它变成铁的。只是一些机制,给了我体面的保护,而不会让客户跳过圈圈或咬牙切齿 我认为,当类在开发模式下使用时,而不是在运行时模式下(当客户的软件发布给客户时),该机制将检查有效的许可证。我认为库通常是按开发人

我正在开发一个.Net类库(一个数据提供者),我开始考虑如何将类库授权给潜在的购买者。所谓许可,我指的是试图阻止我的库被那些没有购买它的人使用的机制,而不是软件许可证(如Apache、Gnu等)

我从来没有处理过许可问题,在过去,我总是开发应用程序,而不是库。我不想让我的客户为难;知道不可能把它变成铁的。只是一些机制,给了我体面的保护,而不会让客户跳过圈圈或咬牙切齿

我认为,当类在开发模式下使用时,而不是在运行时模式下(当客户的软件发布给客户时),该机制将检查有效的许可证。我认为库通常是按开发人员销售的,但我不确定如何在不让我的客户讨厌这种机制的情况下实现这一点;也许这就留给荣誉系统了


我在谷歌上搜索了一下,找到了很多方法。理想情况下,我希望做一些被普遍接受和常见的事情,即类库的“正确”许可方式(如果存在的话),而不是让我的客户处理另一种许可机制。我们将非常感谢您坚定地朝着正确的方向努力

这是.NET提供的解决方案


当客户端实例化类库时,您需要在构造函数代码中检查许可证。如果供应商没有有效/丢失的许可证,则可以引发许可证异常。这将阻止某人使用您的类/库。您应该只执行一次,这样,如果一个类中的许可有效,那么您的所有其他类都将跳过许可检查。

这不是一个好标题。您所谈论的与许可无关。此链接现在重新指向一篇关于组件许可的文章,这篇文章特别不适用于关于许可库的OPs问题。你介意更新这个答案吗?