如何许可证.使用的是Licx文件

本文关键字:Licx 文件 许可证 | 更新日期: 2023-09-27 17:49:39

我有执照。包含在我的一个项目属性中的Licx文件。我不确定它的工人是如何使用它的。它被msbuild使用吗?您知道在构建解决方案时如何使用它吗?

如何许可证.使用的是Licx文件

既然你指出StellarEleven的回复没有帮助,我猜你在寻找更简单的东西。这可能不是100%正确,但这是我对它如何工作的理解:

licx文件只是应用程序使用的"许可"组件的列表。

文件中的每行格式如下:

[Component Name], [Assembly Name]

例如,我的一个项目使用许可的IP Works NetDial组件,所以我的.licx文件包含以下行:

nsoftware.IPWorks.Netdial, nsoftware.IPWorks

在项目(.csproj)文件的上下文中,.licx文件被引用为EmbeddedResource。在构建过程中,LC.exe验证执行构建的机器是否具有相关组件的适当许可证,并生成一个二进制.licenses文件,该文件最终作为资源([AssemblyName].exe.licenses)嵌入到最终的可执行文件中。

这有帮助吗?

许可证。Licx文件故障

将此文件放在ASP下。. NET, WTF部门。

挫折当你正在开发一个web应用程序与我们的控件,一个叫做许可证的神秘文件。licx出现。不,不是的一个命令使用一个奇怪的名字棒棒糖,但是一个过渡文件由参与许可证的Visual Studio生成(和修改)检查。在设计模式下,Visual Studio使用这个文件来做笔记在您的设计中使用的每个许可控件。当你建立您的应用程序,Visual Studio阅读此许可。Licx文件和for这里提到的每个控件都将加载相关的程序集并运行该程序集中的许可证代码,以查看程序集是否正确已授权(也就是说,它所属的产品已被授权)正确安装在那台机器上)。如果一切正常,视觉Studio将许可密钥嵌入到可执行文件中。如果没有,您将得到关于未授权控件的奇怪错误消息(我最喜欢的是"无法转换许可证文件'licenses.licx'"转换成二进制资源。"对此,我通常会引用"五颜六色"我祖先的语言)。

许可证。Licx实际上是解决方案中的一个文件(如果您看不到)如果有,点击显示所有文件)。Visual Studio使用了一个名为将许可证编译成嵌入的资源应用程序,当许可证编译出现问题时,我已经查看引用此可执行文件的错误消息

下面是许可证中的一行示例。licx文件。

DevExpress.XtraCharts.Web.WebChartControl,DevExpress.XtraCharts.v8.2。Web,版本=8.2.4.0,文化=中性,都9 b171c9fd64da1d1

这个逗号分隔的列表中的第一个值是类,第二个值是类程序集是否在找到它的地方,其他值是其余的大会的强名称。我相信你已经看到问题了,特别是当您将解决方案升级到最新版本时您使用的第三方控件。如果你愿意,你可以编辑这个文件删除强名称部分没有问题。

但这并不是licenses.licx最大的问题。问题是控件时,Visual Studio倾向于触摸此文件解决方案(即"触摸",将文件日期更改为当前日期/时间)。这对授权造成了严重破坏,特别是如果您如果在未授权的机器上打开解决方案,您正在使用源代码控制。突然,您的构建机器将摆脱这些"无法转换"的信息,你就会想到底是哪里出了问题。另一个普遍的问题是当你有一个开发团队在工作时一个解决方案:他们都在无意识地"修改"这个文件。

所以,答案似乎是不放许可证。Licx文件下源代码控制。(KB文章)

但是这个问题的解决方案抛出了另一个危险信号:如果团队中的开发人员添加了一个需要授权的新控件表格,一行被添加到他的本地许可证中。Licx文件,它可能不会在源代码控制中得到反映。砰,您的构建机器失败了而Joe,他添加了控件,必须为他们买甜甜圈团队合作,直到有人破坏构建。

对于后一个问题,我恐怕没有好的解决办法,因为不幸的是,"不放许可证"。"源代码控制中的Licx"似乎成为每个人解决授权问题的方式。另一个解决方法是删除license。Licx文件,然后得到通过打开解决方案来重新生成它在构建机器上有点困难)。

无论如何,希望所有的帮助在某种程度上。然后用一个电话真的帮不上忙。

我们使用自定义签入策略(TFS),当签入列表中出现此内容时,显式为空。