题
我正在应用程序是广泛使用Microsoft的C1FlexGrid.数十个我们使用,三是失踪他们的许可证。licx的文件而导致的演示飞溅屏幕上突然出现在我开始应用程序。
是否有任何方法来确定哪种形式导致这种行为。短的检查数以百计的目录一方面,我看不到的一种方式。
解决方案
根据Microsoft文档,只有可执行程序集需要licenses.licx。包含表单的DLL程序集仍将创建一个,但会被忽略。这也是我的经验。我建议在设计器视图中打开每个表单并在该视图中重建。这通常会将许多缺少的许可证条目添加到licenses.licx中。但是,它不会更新现有条目。如果您更新了组件,则可能会出现问题。对于ComponentOne,您通常可以编辑licenses.licx并在程序集名称后删除版本信息。其他一些第三方组件更加挑剔,在编译时触摸它们的版本信息会导致错误。
在我看来,.NET许可框架很麻烦,对开发人员来说是不必要的负担。有更简单的方法可以确保组件许可证得到尊重。
其他提示
您无需打开每个表单。每个项目都有一个licenses.licx文件。只需确保在这些文件中引用了C1FlexGrid,然后进行完全重建(Build | Rebuild All)。
那应该解决这个问题。
有时,打开表单并重建整个解决方案甚至不起作用。所以在这种情况下。只需将一些ComponentOne控件从工具箱拖放到表单中(之后可以删除它)。此拖放操作将在“属性”文件夹中自动生成licenses.licx。
Microsoft具有实用程序,其中将(重新)产生的许可证。licx文件对现有项目。
来源文章: https://www.grapecity.com/blogs/licensing-and-licenses-licx-file-licxgenerator-tool
说明:
该LicxGenerator工具
幸运的是[生成的许可证。licx文件]可以是自动的, 非常感谢我们的客户Dom*辛克莱的灵感。在[相联系 下文]LicxGenerator的工具,创建一个许可证。licx文件使用许可证 信息条目的所有控制下找到一个指定的路径。如果 你运行,它要求你浏览的二进制文件的文件夹,然后把 所产生的文件在同样的道路。如果你需要更多的控制你 可以运行该命令行的选择。你也可以运行,它与其他 自动化的任务。
使用:
LicxGenerator [-r] [-p prefix] [-s] [sourcePath] [outputPath]
参数:
-r
:为递归的搜索中子文件夹
-p
:只搜索文件,这些文件的名称开始从指定的前缀;
-s
:静音模式。如果两个
sourcePath
和-s
参数不定,该工具将 出示的文件夹选择对话。如果的outputPath
是不设置, 将以相同sourcePath
值。产生的许可证。licx文件项目:
建造项目第一,以便输出文件夹中包含的所有 二进制文件;
运行LicxGenerator与路径的项目的输出文件夹;
采取所产生的许可证。licx的文件,并将它添加到项目中。
这个免费工具将节省很多时间在挖到许可 问题。