背景信息:我在 VS2008 中设置了一个非常简单的 .NET 解决方案,其中包含的代码足以在预览窗口中显示 ActiveReports 报告。ActiveReports 组件使用该licenses.licx
机制来决定它是否已获得适当的许可。如果它没有找到有效的许可证密钥,它将在报告预览中显示一条突出的消息,说明“这是一个评估副本,[blah blah blah etc.]”。
我的问题:我有两台电脑,都安装了相同版本的 VS2008 和 ActiveReports。每次安装我都有有效的许可证。现在,当我在一台机器上构建我的解决方案时,我得到一个没有评估横幅消息的报告预览,而在另一台机器上,完全相同的解决方案编译为一个将显示评估消息的应用程序。
到目前为止我发现了什么:使用Reflector.NET我发现在第二台机器(显示评估消息)上,许可证编译器(LC.EXE
)似乎忽略了licenses.licx
. 但它不会显示任何错误或警告消息。
⇒ 所以,这个问题仍然存在:在什么情况下会LC.EXE
决定忽略从licenses.licx
生成输出MyApplication.licenses
嵌入资源时开始的一行文本?
PS:通过删除文件然后通过临时向解决方案添加虚拟报告来重新创建该文件并不能解决问题。licenses.licx
这个技巧经常被提到类似的许可问题,但在这里不起作用。licenses.licx
文件内容似乎是有效的。
PPS:不完全确定这是堆栈溢出问题还是超级用户问题。