我遇到过多个使用许可方案的第三方.Net组件供应商.在评估副本上,组件显示为具有唠叨屏幕或水印或某些此类指示符.在许可的计算机上,创建了Licenses.licx - 看起来只是程序集的全名/标识符.构建客户端程序集时必须包含此文件.
这个模型是如何工作的?从组件供应商和用户的角度来看.
什么是.licx文件?是否应该检查?我们遇到了许多错误/正确的.licx文件被检入的问题
logicnp.. 24
那不对.licx文件非常重要,并且必须使用嵌入在其中的正确许可证信息构建主机应用程序.因此,关键是licx文件也包含在源代码管理中.否则,检查另一台机器上的源代码的人将无法获取licx文件,并且构建可能会失败或者没有针对exe中使用的组件的正确许可证信息.
那不对.licx文件非常重要,并且必须使用嵌入在其中的正确许可证信息构建主机应用程序.因此,关键是licx文件也包含在源代码管理中.否则,检查另一台机器上的源代码的人将无法获取licx文件,并且构建可能会失败或者没有针对exe中使用的组件的正确许可证信息.
几乎所有关于.Net许可的内容都在这里解释.我想,无需改写.
如果可以,最好从源代码管理中的项目中排除许可证文件.否则,编辑视觉组件可能是痛苦的屁股.此外,不需要将许可证文件存储在源代码控制存储库中.
希望这可以帮助.
这是一篇关于这个主题的好文章:点击这里
为了使用TX Text Control等许可组件部署应用程序,必须正确许可EXE文件.
.NET许可机制建议将许可证添加到EXE - 调用程序集.
----详细情况怎么样?
如果将TextControl从Visual Studio工具箱拖放到窗体,Visual Studio将创建licenses.licx文件并包含许可证信息.此文件与项目文件位于同一文件夹中.
重要说明:licenses.licx文件不包含许可证字符串本身.它只包含有关许可组件的信息.在TX Text Control(TXTextControl.TextControl)的情况下,添加以下字符串:
TXTextControl.TextControl, TXTextControl, Version=15.0.700.500, Culture=neutral, PublicKeyToken=6b83fe9a75cfb638
如您所见,它包含命名空间和控件名称,程序集版本,区域性信息和唯一的公钥标记.根据该信息,许可证编译器(lc.exe)编译将嵌入可执行程序集的真实许可证字符串.lc.exe是.NET Framework SDK的一个小实用程序,在构建过程中由Visual Studio使用.
----如果我在用户控件中使用TX Text Control怎么办?
在这种情况下,您还需要将许可证添加到主可执行文件中.因此,您只需将TextControl拖放到主项目的虚拟表单中,即可自动添加licenses.licx文件和引用.
之后,您可以再次从该表单中删除TextControl.或者,您只需将licenses.licx文件复制或创建到主项目文件夹即可.在这种情况下,您还需要手动添加对TX Text Control的引用.