我可以在我的项目和Nuget包中使用DeepZoomTools.dll吗?

时间:2016-09-28 10:22:07

标签: c# .net silverlight licensing deepzoom

我尝试使用OpenSeadragonDeep Zoom Image)支持来实施.dzi formart查看器。

为了使工作正常,我应该在服务器端创建磁贴和正确的xml

Microsoft的Deep Zoom Composer包含DeepZoomTools.dll。它提供了我需要的功能。我将此dll添加到了我的项目中。

所以我有一些问题:

  1. 在服务器端使用此dll是否存在任何法律问题,因为它是 SilverLight 3 的一部分?
  2. 我想在此库上方使用我的包装器创建 NuGet 包和 Github 存储库,那么我可以在此包中使用DeepZoomTools.dll吗?我可以在 Github 项目中使用哪种许可证?
  3. 我可以反编译DeepZoomTools.dll并对其进行一些更改以添加一些功能,然后在项目和NuGet包中使用它吗?
  4. 最后一个问题:为此目的,是否有任何 .net 替代库? (我知道我们不能在这里询问工作库,但仍然)

1 个答案:

答案 0 :(得分:15)

对这篇文章的篇幅提前道歉,但我觉得有必要提供尽可能多的信息,因为我发现许可证的棘手性质以及我缺乏法律专业知识。

考虑到这个工具的时代,没有太多资源可以继续。我设法在原始msdn blog post的评论中找到了重新分发问题,并得到了作者的回答,并截断了相关内容,以防博客最终消失(突出显示我的):

Deep Zoom Composer redistribution question & answer in comments

不幸的是,Live Labs现在似乎已经走到了尽头。

然后我转向您在安装msi时签署的许可协议,并确定它涵盖了重新分发。具体来说,条款2a和我将在此发布,以保存其他人只需要下载并安装msi以便读取该位(但请完成整个许可证):

安装MSI的相关许可证位 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS - Distributable Code

上面引用的REDIST.TXT的相关内容

  

DeepZoomTools.dll

编辑:我忘记在我的研究工作中回答您的具体问题,所以这是我对上述信息的看法

  

在服务器端使用此dll是否有任何法律问题,因为它是SilverLight 3的一部分?

鉴于仅限Windows分发,除非您能以某种方式确保您的解决方案将被限制为相同,否则我认为您无法安全地使用此dll。

  

我想用这个库上面的包装器创建NuGet包和Github存储库,那么我可以在这个包中使用DeepZoomTools.dll吗?我可以在我的Github项目中使用什么样的许可证?

同样,只要你能确保只限windows,你就可以从我的理解中创建Nuget。从技术上讲,因为.Net可以通过单声道在其他平台上运行,它将归结为您的许可限制以防止这种情况发生。这将我们带到你问题的第二部分:Github repo的许可证类型。答案是在第2.a.ii条中第二点:它必须至少与此DLL的许可一样具有限制性。

  

我可以反编译DeepZoomTools.dll并对其进行一些更改以添加一些功能,然后在项目和NuGet包中使用它吗?

第4条第1及第1条许可证的第二点明确禁止反编译或解决技术限制,以便为您的问题提供坚实的

SCOPE OF LICENSE

  

是否有用于此目的的.net替代库

我注意到github上有一个similar project(虽然7岁,所以我怀疑API仍然是完全匹配),它使用了GTK Sharp。也许你可以使用相同的方法?我不熟悉DeepZoom格式本身,最终帮助你。

您可以在relevant msdn forums

上提出澄清问题

Kirupa.com似乎仍然活得很好,你可能希望伸出in their forums并寻求澄清,因为参考博客文章的作者从该域发布了她的电子邮件地址(尽管我怀疑它现在直播Kirupa是MS)。

免责声明:像往常一样,我只是另一位开发人员而非法律专家。据我所知,您可以在代码中使用dll并重新分发它,但不幸的是,您在安装程序时同意的许可协议中规定了限制。但是,您可能希望获得一位称职的软件版权律师对此事的建议。