Informations
Le sujet que vous avez demandé est indiqué ci-dessous. Toutefois, ce sujet ne figure pas dans la bibliothèque.

DeviceInformation Class

Représente un périphérique. Cette classe permet l'accès aux propriétés de périphérique connues ainsi qu'à des propriétés supplémentaires qui peuvent être spécifiées pendant l'énumération des périphériques.

Syntaxe


var deviceInformation = Windows.Devices.Enumeration.DeviceInformation;

Attributs

[DualApiPartition()]
[MarshalingBehavior(Agile)]
[Threading(Both)]
[Version(0x06020000)]

Membres

DeviceInformationClasse possède ces types de membres :

Méthodes

The DeviceInformation Classe a les méthodes suivantes. Avec C#, Visual Basic et C++, elle hérite également des méthodes de Object Classe.

MéthodeDescription
CreateFromIdAsync(String) Creates a DeviceInformation object from a DeviceInformation ID.
CreateFromIdAsync(String, IIterable(String)) Creates a DeviceInformation object from a DeviceInformation ID and a list of additional properties.
CreateWatcher() Creates a DeviceWatcher for all devices.
CreateWatcher(DeviceClass) Creates a DeviceWatcher for devices matching the specified DeviceClass.
CreateWatcher(String) Creates a DeviceWatcher for devices matching the specified Advanced Query Syntax (AQS) string.
CreateWatcher(String, IIterable(String)) Creates a DeviceWatcher for devices matching the specified Advanced Query Syntax (AQS) string and the specified collection of properties.
FindAllAsync() Enumerates all DeviceInformation objects.
FindAllAsync(DeviceClass) Enumerates DeviceInformation objects of the specified class.
FindAllAsync(String) Enumerates DeviceInformation objects matching the specified Advanced Query Syntax (AQS) string.
FindAllAsync(String, IIterable(String)) Enumerates DeviceInformation objects matching the specified Advanced Query Syntax (AQS) string and including the specified collection of properties.
GetGlyphThumbnailAsync Gets a glyph for the device.
GetThumbnailAsync Returns a thumbnail image for the device.
Update Updates the properties of an existing DeviceInformation object.

 

Propriétés

Le DeviceInformationClasse a les propriétés suivantes.

PropriétéType d'accèsDescription

EnclosureLocation

En lecture seuleThe physical location of the device in its enclosure.

Id

En lecture seuleA string representing the identity of the device.

IsDefault

En lecture seuleIndicates whether this device is the default device for the class.

IsEnabled

En lecture seuleIndicates whether this device is enabled.

Name

En lecture seuleThe name of the device.

Properties

En lecture seuleProperty store containing well-known values as well as additional properties that can be specified during device enumeration.

 

Remarques

L'achèvement sans erreur de FindAllAsync entraîne une DeviceInformationCollection contenant des objets DeviceInformation.

Si un appel à CreateWatcher aboutit, un objet DeviceInformation est passé à l'événement added pour chaque périphérique trouvé.

La propriété Name doit être utilisée pour l'affichage uniquement et pas pour rechercher un périphérique car le Name peut changer suite à la localisation ou l'assignation d'un nom par l'utilisateur.

CreateFromIdAsync crée un objet DeviceInformation si l'opération réussit.

La classe DeviceInformation fournit les informations relatives au périphérique, mais elle fournit plus particulièrement les propriétés de l'interface de périphérique, l'interface qui représente la fonctionnalité que le périphérique expose. Les périphériques multifonctionnels peuvent avoir plusieurs interfaces de périphérique. L'objet physique qu'un utilisateur considère comme un périphérique est appelé le conteneur de périphérique et possède des propriétés telles que Manufacturer et ModelID. Pour obtenir la liste des propriétés associées aux interfaces de périphérique, les conteneurs de périphérique et d'autres objets PnP, consultez la liste des propriétés canoniques dans Récupération de propriétés supplémentaires pour un périphérique ou un objet PnP. Pour accéder aux didacticiels sur le mode d'utilisation de la classe DeviceInformation afin obtenir des informations sur le périphérique, consultez Récupération de propriétés supplémentaires pour un périphérique ou un objet PnP, Comment récupérer des objets PnP associés et Démarrage rapide : énumération des conteneurs de périphérique.

Exemples

Cet exemple énumère de façon incrémentielle les périphériques, en les ajoutant à une liste chaque fois qu'un périphérique est trouvé et en gérant aussi les suppressions et les mises à jour.


    var watcher;
    var isEnumerationComplete = false;
    var deviceArray = new Array(); // Saves the enumeration results

    function WatchDevices() {
        try {
            output.innerHTML = ""; // clear output field

            watcher = 
                Windows.Devices.Enumeration.DeviceInformation.createWatcher();
            // Add event handlers
            watcher.addEventListener("added", onAdded);
            watcher.addEventListener("removed", onRemoved);
            watcher.addEventListener("updated", onUpdated);
            watcher.addEventListener("enumerationcompleted", 
                onEnumerationCompleted);
            watcher.addEventListener("stopped", onStopped);
            // Start enumerating and listening for events
            watcher.start();
        } catch (e) {
            document.getElementById("statusMessage").innerHTML = 
                "Failed to create watcher, error: " + e.message;
        }
    }

    function stopWatcher() {
        try {
            watcher.stop();
        }
        catch (e) {
            document.getElementById("statusMessage").innerHTML = 
                "Failed to stop watcher: " + e.message;
        }
    }

    function onAdded(devinfo) {
        document.getElementById("output").innerHTML += "<p>Device added: " + 
            devinfo.name + "</p>";
        deviceArray.push(devinfo);
        if (isEnumerationComplete) {
            output.innerHTML = ""; // clear output field
            printDeviceArray(document.getElementById("output"));
        }
        
    }

    function onUpdated(devUpdate) {
        document.getElementById("output").innerHTML += "<p>Device updated.</p>";
        for (var i = 0; i < deviceArray.length; i++) {
            if (deviceArray[i].id == devUpdate.id) {
                deviceArray[i].update(devUpdate);
            }
        }
        output.innerHTML = ""; // clear output field
        printDeviceArray(document.getElementById("output"));
    }

    function onRemoved(devupdate) {
        document.getElementById("output").innerHTML += "<p>Device removed.</p>";
        for (var i = 0; i < deviceArray.length; i++) {
            if (deviceArray[i].id == devupdate.id) {
                deviceArray[i].slice(devupdate);
            }
        }
        output.innerHTML = ""; // clear output field
        printDeviceArray(document.getElementById("output"));
    }

    function onEnumerationCompleted(obj) {
        isEnumerationComplete = true;
        document.getElementById("output").innerHTML += 
            "<p>Enumeration Completed.</p>";
        printDeviceArray(document.getElementById("output"));
    }

    function onStopped(obj) {
        document.getElementById("output").innerHTML += "<p>Stopped.</p>";
        if (watcher.status == Windows.Devices.Enumeration.DeviceWatcherStatus.aborted) {
           document.getElementById("output").innerHTML += 
            "<p>Enumeration stopped unexpectedly. </p>";
           document.getElementById("output").innerHTML += 
            "<p>Click the Watch button to restart enumeration.</p>";
        } else if (watcher.status == Windows.Devices.Enumeration.DeviceWatcherStatus.stopped) {
           document.getElementById("output").innerHTML += 
            "<p>You requested to stop enumeration. </p>";
           document.getElementById("output").innerHTML += 
            "<p>Click the Watch button to restart enumeration.</p>";
        }

    }


    // Prints the friendly name of the device interface, 
    // its ID (device interface path), and whether it is enabled.
    function printDevice(deviceInterface, outputDestination) {
        outputDestination.innerHTML += "<p>Name: " + 
            deviceInterface.name + "<p/>"; 
        outputDestination.innerHTML += "<p>Interface ID: " + 
            deviceInterface.id + "<p/>";    
        outputDestination.innerHTML += "<p>Enabled: " + 
            deviceInterface.isEnabled + "<p/>";
        outputDestination.innerHTML += "<br />";
    }

    function printDeviceArray(outputDestination) {
        for (var i = 0; i < deviceArray.length; i++) {
            printDevice(deviceArray[i], outputDestination);
        }
    }


Conditions requises

Client minimal pris en charge

Windows 8 [Applications Windows Store, applications de bureau]

Serveur minimal pris en charge

Windows Server 2012 [Applications Windows Store, applications de bureau]

Espace de noms

Windows.Devices.Enumeration
Windows::Devices::Enumeration [C++]

Métadonnées

Windows.winmd

 

 

Afficher:
© 2014 Microsoft