UPnP OS Design Development (Windows CE 5.0)

Send Feedback

The Universal Plug and Play (UPnP) implementation provides an architectural framework for creating self-configuring, self-describing devices and services. Because UPnP supports automatic discovery, devices managed by UPnP require no set up by users or network administrators. UPnP enables a device to dynamically join a network, obtain an IP address, and convey its capabilities upon request.

UPnP control points learn about the presence and capabilities of devices that are registered on the network, and then invoke actions and receive information about device changes. In this reciprocal relationship, UPnP devices provide functionality to be controlled by control points.

Support and application programming interfaces are included for:

  • UPnP control points, using the UPnP Control Point API.
  • UPnP devices, using the UPnP Device Host API.
  • UPnP Audio/Video (AV) control points and devices, using the UPnP AV Framework.

OS Design Information

The following table shows operating system design information for UPnP.

Concept Description
Dependencies for Control Point API, Device Host API, Device Host API (Minimal Subset), AV Control Point API, and AV Device API Web Server (HTTPD), XML Minimal Parser, Core Server Support
Dependencies for AV Renderer Sample Web Server (HTTPD), XML Minimal Parser, Core Server Support, Device Host API, AV Device API, DirectShow and related codecs
Dependencies for Sample UPnP IGD Schema Implementation Web Server (HTTPD), XML Minimal Parser, Core Server Support, Device Host API (Minimal Subset), Authentication Services (SSPI), NTLM, Internet Connection Sharing (ICS), IP Helper API
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 OS designs that include UPnP functionality. upnpsvc None
UPnP API. This module is used by all OS designs that include UPnP functionality. upnpcapi None
UPnP Control Point API. upnpctrl None
UPnP Device Host API. upnphost None
UPnP device loader. upnploader None
UPnP device registration command-line tool. upnpreg None
UPnP AV Framework av_upnp.lib None
UPnP AV Framework type library. av_dll None
Generic UPnP control point sample. genericucp None

Implementation Considerations

The following table shows Sysgen variables for UPnP Catalog items.

Sysgen variable Description
SYSGEN_UPNP_CTRL When this variable is set, the UPnP Control Point API Catalog item is included in the OS design.

This Catalog item includes the UPnP Control Point API.

SYSGEN_UPNP_DEVICE When this variable is set, the Device Host API Catalog item is included in the OS design.

This Catalog item includes the complete UPnP Device Host API. Adding this item also brings in the UPnP device loader.

SYSGEN_UPNP_DEVICE_MINI When this variable is set, the Device Host API (Minimal Subset) Catalog item is included in the OS design.

This Catalog item includes a minimal subset of Device Host API functionality.

SYSGEN_UPNP_AV_CTRL When this variable is set, the AV Control Point API Catalog item is included in the OS design.

This Catalog item includes control point functionality provided by the UPnP AV Framework.

SYSGEN_UPNP_AV_DEVICE When this variable is set, the AV Device API Catalog item is included in the OS design.

This Catalog item includes device functionality provided by the UPnP AV Framework.

SYSGEN_UPNP_AV_RENDERER When this variable is set, the AV Renderer Sample Catalog item is included in the OS design.

This Catalog item includes a sample implementation of a UPnP AV MediaRenderer device built using the UPnP AV Framework.

SYSGEN_IGD When this variable is set, the Sample UPnP IGD Schema Implementation Catalog item is included in the OS design.

This Catalog item is a sample implementation that shows how to implement the Internet Gateway Device (IGD) schema.

SYSGEN_UPNP_TOOLS When this variable is set, the UPnP Tools Catalog item is included in the OS design.

This item includes a UPnP device registration command-line tool and generic UPnP samples.

SYSGEN_UPNP_TOOLS_UI When this variable is set, the generic UPnP control point sample is included in the OS design.
SYSGEN_DISCOVER_SERVICE When this variable is set, the discovery service sample is included in the OS design.

See Also

Universal Plug and Play (UPnP)

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.