Universal Plug and Play (UPnP) Overview

The Universal Plug and Play (UPnP) feature for Microsoft® Windows® CE .NET provides an architectural framework for creating self-configuring, self-describing devices and services. Networks managed by UPnP require no configuration by users or network administrators because UPnP supports automatic discovery. UPnP enables a device to dynamically join a network, obtain an IP address, and convey its capabilities on request.

Control points can use the UPnP application programming interface (API) to learn about the presence and capabilities of devices that are registered on the network. A device can leave a network automatically when the device is no longer in use. Windows CE supports UPnP device-hosting services and UPnP control points. A Windows CE–based device can assume one or a combination of the following roles:

  • It can function as a dedicated controlled UPnP device that is connected to the network in a home or business network scenario.
  • It can assume the role of a control point that discovers and controls the available UPnP devices on the network.
  • It can be used as a UPnP bridge that functions as a proxy for non-UPnP devices.

Windows CE .NET also includes the UPnP Tools feature that helps you create UPnP solutions. This feature contains a command line tool for both headless and UI-based devices, as well as a Generic UPnP Control Point. The generic UPnP Control Point is a tool for use only with UI-based devices.

Feature Summary

The following table shows operating system design information for UPnP.

Element Information
Dependencies for Control Point API, Device Host API, and Device Host API (minimal subset) Web Server (HTTPD), XML Minimal Parser, Core Server Support
Dependencies for UPnP Tools Web Server (HTTPD), XML Minimal Parser, Core Server Support, Control Point API, Device Host API
Hardware considerations None

Modules and Components

The following table shows the components and modules that implement UPnP.

Item Module Component
UPnP service. This module is used by all UPnP configurations. upnpsvc None
UPnP API. This module is used by all UPnP configurations. upnpcapi None
UPnP control point API upnpctrl None
UPnP device host upnphost None
UPnP device loader upnploader None
UPnP device registration command-line tool upnpreg None
Generic UPnP control point sample genericucp None

Operating System Development Topics

Universal Plug and Play Implementation Considerations

Application Development Topics

Universal Plug and Play (UPnP)

Control Point API

UPnP Security

UPnP Registry Settings

UPnP Device Host Reference

UPnP C Device Host Reference

Control Point API Reference

See Also

Windows CE Modules and Components | Catalog Features

 Last updated on Friday, April 09, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.