0

我对许可问题的经验很少。假设我正在为 .NET 2.0 开发应用程序。可以在我的应用程序中使用(和分发)一些 .NET 3.5 DLL 吗?

例如,我可以将设置中的“System.Core.dll”复制到客户端的机器上吗?或者我什至可以提取一些类(例如使用反射器),将它的源代码放在我的一个项目中,然后按原样使用它?

我不确定使用 Reflector 来执行此操作是否合法,但是从Microsoft 的 Reference Source Server下载相同的类有什么区别?

无论如何,我想我只是在使用类,这是框架实际提供的。我的想法有什么误解吗?

4

3 回答 3

5

您绝对绝对不应该开始将 DLL 从一个框架版本重新分发到另一个框架版本。

一方面它很可能是非法的(甚至或者可能特别是使用反射器来提取源代码)——但更重要的是,你会得到一些代码,这些代码是为一个版本的框架运行而设计和编写的。谁知道他们是否依赖于 mscorlib 中仅在 .NET 3.5 中实现的错误修复?

如果您想要 .NET 2.0 中的 LINQ to Objects,LINQBridge是您的朋友。对于其他问题,我强烈建议在部署机器上寻找第三方实现或升级框架版本。

于 2009-01-21T11:46:04.140 回答
0

为什么需要分发这些 dll?无论如何,您都需要在客户端机器上安装 .Net 框架。这应该包括所有相关的 Microsoft dll。

AFAIK .Net ap 无法在没有框架的机器上运行,所以无论如何你都需要它。

编辑 我刚刚查看了.NET Framework 1.1 Redistributable EULA(在 Google 中找不到 3.0 的 EULA)。它并没有明确允许您提出的建议,所以我的猜测是您可能不会这样做。

ps:伊纳尔 ;-)

于 2009-01-21T11:47:37.660 回答
0

我敢肯定,您认为 .NET 上的 Microsoft 许可证绝对是非法的

于 2009-01-21T11:57:59.840 回答