Licenses.licx对DevExpress控件有什么作用?我删除了licenses.licx中的所有行,没有区别。我成功编译并运行了我的应用程序。我对这种行为感到很惊讶。谁能解释一下有关正在发生的事情的细节?
答案 0 :(得分:8)
在DX论坛上查看this帖子:
licenses.licx文件包含有关应用程序中使用的控件的许可信息。然后编译成 App_Licenses.dll。它应该与您的网站一起部署 部署项目。如果你需要重新生成 App_Licenses.dll,右键单击解决方案中的licenses.licx文件 浏览器并选择“Build Runtime Licenses”命令。
答案 1 :(得分:3)
从DX blog读取许可文件是由Visual Studio在设计时生成的,并在编译时刻录到程序集中。
Licenses.licx实际上是解决方案中的一个文件(如果你看不到的话) 在那里,单击显示所有文件)。 Visual Studio使用一个名为的程序 lc.exe将许可证编译成你的嵌入式资源 应用
如果你愿意,你可以偶然发现它的价值:
以下是licenses.licx文件中一行的示例。
DevExpress.XtraCharts.Web.WebChartControl, DevExpress.XtraCharts.v8.2.Web,Version = 8.2.4.0,Culture = neutral, 公钥= 9b171c9fd64da1d1
此逗号分隔列表中的第一个值是类,第二个 是发现它的组件,其他值是其余的 大会的强名。我相信你已经看到了问题, 特别是当您将解决方案升级到最新版本的 您使用的第三方控件。如果需要,您可以编辑此文件 删除强名称部分没有问题。
请注意,在源代码管理方面存在已知问题:
事情是,Visual Studio倾向于触摸此文件 你打开解决方案(在更改文件日期时“触摸” 到当前日期/时间)。这会对许可造成严重破坏,特别是 如果你碰巧在非许可的机器上打开解决方案而你就是 使用源代码控制。突然你的构建机器会抛弃这些 “无法改变”消息,你就会想知道出了什么问题。 另一个普遍的问题是当你有一个开发团队工作时 解决方案:他们都无意识地“修改”了这个文件。