Enumerating devices (HTML)


The Windows.Devices.Enumeration and Windows.Devices.Enumeration.Pnp namespaces enable you to enumerate devices. The following are typical reasons to enumerate devices:

  • Selecting the device to be used by an application. For example, a voice chat application may use the API to present a list of microphones or webcams for the user to select from, or a photo import app may use the API to present a list of removable storage devices for the user to select from.
  • Device discovery and notifications about devices, for apps that use them, such as Windows Store device apps.

In this section

Topic Description

Quickstart: Enumerating commonly used devices

Here we show you how to do a one-time enumeration of commonly used devices using FindAllAsync.

How to get notifications on device add, remove or change

This tutorial shows you how to enumerate devices dynamically. Then, your app can receive notification if devices are added or removed, or if device properties change.

How to save the last used device to reuse it later

This topic explains how to get device information from a saved device ID, by calling DeviceInformation.CreateFromIdAsync.

Quickstart: Enumerating device containers

This topic shows you how to use the Windows.Devices.Enumeration.PnP namespace to enumerate device containers.

How to retrieve additional properties for a device or PnP object

Describes how to get additional device properties from a DeviceInformation or PnpObject.

How to retrieve related PnP objects

This topic describes how to find Plug and Play (PnP) objects that are related to each other. For example, you may want to retrieve the device container object that is related to a device information object.

How to check where a device is located on a portable computer

This topic shows you how to find out if an embedded camera or other embedded device is in the front, back, lid, or panel of a portable computer.

How to display a device icon

This topic shows you how to display a device icon.


Developer audience

You should be familiar with HTML, JavaScript, and events.