So wird’s gemacht: Abrufen zusätzlicher Eigenschaften für ein Gerät oder PnP-Objekt (HTML)
[ Dieser Artikel richtet sich an Windows 8.x- und Windows Phone 8.x-Entwickler, die Windows-Runtime-Apps schreiben. Wenn Sie für Windows 10 entwickeln, finden Sie weitere Informationen unter neueste Dokumentation]
Beschreibt das Abrufen zusätzlicher Geräteeigenschaften aus einem DeviceInformation-Objekt oder PnpObject-Objekt.
Angeben zusätzlicher Eigenschaften
findAllAsync und createWatcher geben standardmäßig DeviceInformation-Objekte mit folgenden Eigenschaften zurück:
Eigenschaft | Kanonischer Name |
---|---|
ID | Nicht zutreffend Diese Eigenschaft ist die Identität des Objekts. |
Name | System.ItemNameDisplay |
IsDefault | System.Devices.IsDefault |
IsEnabled | System.Devices.InterfaceEnabled |
EnclosureLocation | System.Devices.PhysicalDeviceLocation |
Sie können die überladenen Formen der findAllAsync-Methode und der createWatcher-Methode verwenden, die für die DeviceInformation-Klasse und PnpObject-Klasse verfügbar sind. Mit dem additionalProperties-Parameter können Sie zusätzliche Eigenschaften angeben, um sie in die Ergebnisse aufzunehmen. Hier sehen Sie wie:
// Create a set of two additional properties.
var propertiesToRetrieve = new Array();
propertiesToRetrieve.push("System.Devices.InterfaceClassGuid");
propertiesToRetrieve.push("System.Devices.ContainerId");
Windows.Devices.Enumeration.findAllAsync(selectorString,
propertiesToRetrieve).then(successCallback, errorCallback);)
// Handles successful completion of the findAllAsync method.
function successCallback(deviceInformationCollection) {
var numDevices = deviceInformationCollection.length;
if (numDevices) {
for (var i = 0; i < numDevices; i++) {
printProperties(document.getElementById("log"),
deviceInformationCollection[i].properties);
}
}
}
// Handles an error completion of the findAllAsync method.
function errorCallback(e) {
document.getElementById("statusMessage").innerHTML =
"Failed to find devices, error: " + e.message;
}
function printProperties(log, prop) {
log.innerHTML += "property store count is: " + prop.size;
var pt = prop.first();
while (pt.hasCurrent) {
log.innerHTML += "<br />" + pt.current.key + " := " + pt.current.value;
pt.moveNext();
}
log.innerHTML += "<br />";
}
Liste kanonischer Eigenschaften
Wenn ein Eigenschaftswert keiner bestimmten Geräteschnittstelle zugeordnet ist, kann er dem Gerät zugeordnet werden, zu dem die Schnittstelle gehört, oder dem Gerätecontainerobjekt, das die sichtbaren Aspekte eines Gerätehardware-Produkts darstellt, wie den Hersteller- oder Modellnamen. Es folgen Listen der Eigenschaftsnamen für Geräteschnittstellen, Geräte und Gerätecontainer. Wie Sie zwischen Objekttypen navigieren, erfahren Sie unter Abrufen zugehöriger PnP-Objekte.
Geräteschnittstellen-Eigenschaften
Name | Eigenschaft | Beschreibung |
---|---|---|
System.Devices.ContainerId |
DEVPKEY_Device_ContainerId |
ID des Containers der Geräteschnittstelle. |
System.Devices.DeviceInstanceId |
DEVPKEY_Device_InstanceId |
Geräteinstanz-ID des Geräts, zu dem diese Schnittstelle gehört. |
System.Devices.InterfaceClassGuid |
DEVPKEY_DeviceInterface_ClassGuid |
Klassen-GUID der Schnittstelle. |
System.Devices.InterfaceEnabled |
DEVPKEY_DeviceInterface_Enabled |
Gibt an, ob die Schnittstelle aktiviert ist. |
System.ItemNameDisplay |
DEVPKEY_NAME |
Angezeigter Name der Geräteschnittstelle. |
System.Storage.IsMediaRemovable |
DEVPKEY_Storage_Removable_Media |
Gibt an, ob die Medien des Volumes Wechselmedien sind. |
System.Storage.IsPortable |
DEVPKEY_Storage_Portable |
Gibt an, ob der Speicherstapel den Speicher als tragbar ansieht. |
Geräteeigenschaften
Name | Eigenschaft | Beschreibung |
---|---|---|
System.Devices.Children |
DEVPKEY_Device_Children |
Geräteinstanz-IDs der untergeordneten Elemente. Werden live vom Kernelzustand abgefragt. |
System.Devices.CompatibleIds |
DEVPKEY_Device_CompatibleIds |
Diese Eigenschaft ist ein Zeichenfolgenwert einer variablen Größe, der die Liste der kompatiblen IDs für das Gerät enthält. |
System.Devices.ContainerId |
DEVPKEY_Device_ContainerId |
ID des Containers des Gerätecontainers. |
System.Devices.DeviceCapabilities |
DEVPKEY_Device_Capabilities |
Diese Eigenschaft ist ein DWORD-Wert, der einen bitweisen OR-Operator der Funktionen eines Geräts enthält. Diese Funktionen werden durch die CM_DEVCAP_Xxxxx-Bitmasken dargestellt, die in cfgmgr32.h definiert sind. |
System.Devices.DeviceCharacteristics |
DEVPKEY_Device_Characteristics |
Diese Eigenschaft ist ein DWORD-Wert, der einen bitweisen OR-Operator der Eigenschaften eines Geräts enthält. Eine Beschreibung dieser Flags, die in wdm.h und ntddk.h definiert sind, finden Sie in den Informationen zum DeviceCharacteristics-Parameter der IoCreateDevice-Funktion. |
System.Devices.DeviceHasProblem |
DEVPKEY_Device_HasProblem |
Diese Eigenschaft wird live vom Kernelzustand abgefragt. |
System.Devices.DeviceInstanceId |
DEVPKEY_Device_InstanceId |
Geräteinstanz-ID. |
System.Devices.HardwareIds |
DEVPKEY_Device_HardwareIds |
Diese Eigenschaft ist ein Zeichenfolgenwert einer variablen Größe, der die Liste der Hardware-IDs für das Gerät enthält. |
System.Devices.InLocalMachineContainer |
DEVPKEY_Device_InLocalMachineContainerr |
Gibt an, ob devnode im Container des Computers vorhanden ist. |
System.ItemNameDisplay |
DEVPKEY_NAME |
Name der Geräteinstanz. |
Containereigenschaften
Name | Eigenschaft und Beschreibung |
---|---|
System.ItemNameDisplay | PKEY_NAME - Name des Containers. |
System.Devices.DiscoveryMethod | DEVPKEY_DeviceContainer_DiscoveryMethod - Liste der Geräteermittlungsmethoden. |
System.Devices.Connected | DEVPKEY_DeviceContainer_IsConnected - Gibt an, ob das Gerät verbunden ist. |
System.Devices.Paired | DEVPKEY_DeviceContainer_IsPaired - Gibt an, ob das Gerät gekoppelt ist. |
System.Devices.Icon | DEVPKEY_DeviceContainer_Icon - Pfad zum Gerätesymbol. |
System.Devices.LocalMachine | DEVPKEY_DeviceContainer_IsLocalMachine - Gibt an, ob dieser Container den lokalen Computer (PC) darstellt. |
System.Devices.MetadataPath | DEVPKEY_DeviceContainer_MetadataPath - Pfad zu den Gerätemetadaten. |
System.Devices.LaunchDeviceStageFromExplorer | DEVPKEY_DeviceContainer_LaunchDeviceStageFromExlplorer - Gibt an, ob Device Stage von Windows Explorer aus geöffnet werden soll. |
System.Devices.DeviceDescription1 | DEVPKEY_DeviceContainer_DeviceDescription1 - Beschreibung des Geräts. |
System.Devices.DeviceDescription2 | DEVPKEY_DeviceContainer_DeviceDescription2 - Beschreibung des Geräts. |
System.Devices.NotWorkingProperly | DEVPKEY_DeviceContainer_HasProblem - Gibt an, ob es im Container ein Problem gibt. TRUE, wenn DEVPKEY_DEVICE_HasProblem für ein Gerät im Container auf TRUE gesetzt ist. |
System.Devices.IsShared | DEVPKEY_DeviceContainer_IsSharedDevice - Gibt an, ob das Gerät freigegeben ist. |
System.Devices.IsNetworkConnected | DEVPKEY_DeviceContainer_IsNetworkDevice - Gibt an, ob das Gerät an das Netzwerk angeschlossen ist. |
System.Devices.IsDefault | DEVPKEY_DeviceContainer_IsDefaultDevice - Gibt an, ob das Gerät das Standardgerät ist. |
System.Devices.Category | DEVPKEY_DeviceContainer_Category_Desc_Singular - Gerätekategorie (Singular). |
System.Devices.CategoryPlural | DEVPKEY_DeviceContainer_Category_Desc_Singular - Gerätekategorie (Plural). |
System.Devices.CategoryGroup | DEVPKEY_DeviceContainer_CategoryGroup_Desc - Gerätekategoriegruppe. |
System.Devices.FriendlyName | DEVPKEY_DeviceContainer_FriendlyName - Angezeigter Name. |
System.Devices.Manufacturer | DEVPKEY_DeviceContainer_Manufacturer - Herstellername. |
System.Devices.ModelName | DEVPKEY_DeviceContainer_ModelName - Modellname. |
System.Devices.ModelNumber | DEVPKEY_DeviceContainer_ModelNumber - Modellnummer. |
Angeben von Eigenschaften, die keinen kanonischen Namen haben
Wenn kein kanonischer Name für eine Eigenschaft angegeben wurde, kann die Eigenschaft trotzdem abgerufen werden, indem der Schlüssel als eine Zeichenfolge im Format "{Guid} pid" angegeben wird. Beispielsweise kann System.Devices.ContainerId als "{8C7ED206-3F8A-4827-B3AB-AE9E1FAEFC6C} 2" angegeben werden.
Verwandte Themen
Konzepte