CyberLink for C++ is a development package for UPnP programmers. Using the package, you can create UPnP devices and control points easily.
It is great. Working on diff platforms, easy to use. There is missing documentation, as well as insufficient demo, but just reading cupnp.h you have all you need ...