Question

How can a pc identify a device or another pc by upnp (or similar protocol)?

I want a c# program on a windows machine that can discover upnp devices in a network or a direct connection? (This should be the easy part)

But what has to be done on the other machine?

case1: machine supports upnp

case2: machine doesn´t support upnp yet

Can you help me with the two cases here?

Was it helpful?

Solution

case 1: machine will show up on device discovery initiated from PC. Yes Windows "normally support upnp" but there is no generic discovery application built on it. Windows Media Player is a specialized UPnP discoverer built on Windows UPnP but will find you only MediaRenderers. You didn't answer my question what services do you want to find on the "other machine". You can use DeviceSpy from the Intel UPnP Development Tools. Works on Windows but does not use Windows UPnP stack - it has its own. There seem to be some helpful frameworks built on top of the Windows UPnP, which is quite bare-bones.

case 2: there is tons of UPnP libraries building just on low level OS capabilities like sockets and filesystem. Even the already mentioned Intel UPnP Development Tools can generate a stack for you. But you need to make up your mind at least about the language in which you want to implement it. Then Google "UPnP Java" or "UPnP C++" or whatever.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top