7

我正在尝试使用 UPnP。具体来说,我正在尝试浏览PS3 Media Server的内容库。

我尝试了upnp.dll(Windows 附带的 COM 库),发现它易于使用。我可以很容易地发现设备并查看它们的服务,但是在尝试访问媒体服务器的服务时会引发异常(其他设备,如我的路由器和 windows 媒体播放器,工作正常)。在网上搜索了一下,发现upnp.dll没有很好地实现,其他人也有同样的问题,没有找到解决办法。

所以我寻找了一个替代方案并找到了 Mono.Upnp。它看起来很有希望,但我根本无法让它发挥作用。

我看到提到英特尔的 UPnP SDK,但这似乎已被弃用,我找不到可下载的软件包。

我不知所措。没有 upnp.dll 的替代品吗?

4

4 回答 4

5

我决定硬着头皮自己动手。这并不难。简单的 udp + xml + 肥皂。

这个链接对我很有帮助:
http ://www.upnp.org/download/UPnP_Device_Architecture_Generic_20000710.ppt

有关媒体服务器内容目录的详细信息,请参阅: http ://www.upnp.org/standardizeddcps/documents/ContentDirectory1.0.pdf

Mono.Upnp源代码也很有帮助。

我没有计划使这个开源,因为它不会是一个完整的实现(我正在为我的项目做严格的最低要求)。

于 2009-11-30T05:00:13.677 回答
5

你也可以考虑ohNet。它已获得 BSD 许可,并具有适用于 Windows、Linux、iOS、Android 和 Mac 的端口以及适用于 C++、C#、Java、JavaScript 和 C 的语言绑定。

(我应该注意到我已经参与了ohNet的开发)

于 2011-09-13T13:44:46.437 回答
2

关于英特尔 UPnP SDK,它最近已更新并重命名为 Developer Tools For UPnP。最显着的变化是它现在包括所有工具和代码生成器的源代码,源代码在 Apache 2.0 许可下,并且在多个地方添加了 IPv6 支持。

请参阅英特尔的Ylian Saint-hilaire的博文 1博文 2

于 2009-12-08T21:54:08.073 回答
1

可能值得浏览MediaPortal源代码的相关部分。特别是,UPnP项目可能很有用。

于 2009-11-26T03:26:59.063 回答