Freigeben über


DeviceInformationKind Enumeration

Definition

Definiert Konstanten, die eine Art deviceInformation-Objekt angeben.

public enum class DeviceInformationKind
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
enum class DeviceInformationKind
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public enum DeviceInformationKind
var value = Windows.Devices.Enumeration.DeviceInformationKind.unknown
Public Enum DeviceInformationKind
Vererbung
DeviceInformationKind
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)

Felder

AssociationEndpoint 5

Das DeviceInformation-Objekt stellt einen Gerätezuordnungsendpunkt (Device Association Endpoint, AEP) dar. AEPs stellen in der Regel ein Gerät dar, das über ein Drahtlos- oder Netzwerkprotokoll ermittelt wird. Einige dieser Endpunkte können verwendet werden, ohne das Gerät zuerst koppeln zu müssen. Verwenden Sie CanPair , um zu ermitteln, ob ein Gerät die Kopplung unterstützt, und IsPaired , um zu ermitteln, ob ein Gerät bereits mit dem System gekoppelt ist. Nur AssociationEndpoint-Objekte weisen für pairing einen Wert ungleich NULL auf. Weitere Informationen zum Koppeln über ein Netzwerk finden Sie unter Auflisten von Geräten über ein Netzwerk. Ein AssociationEndpoint-Objekt ist ein untergeordnetes Element eines einzelnen AssociationEndpointContainer-Objekts und kann 0 oder mehr AssociationEndpointService-Objekte enthalten.

Die ID für dieses Objekt.

AssociationEndpointContainer 6

Das DeviceInformation-Objekt stellt einen Zuordnungsendpunktcontainer (AEP) dar. Ein AssociationEndpointContainer-Objekt stellt ein einzelnes physisches Gerät dar, dem möglicherweise mehrere AssociationEndpoint-Objekte zugeordnet sind. Wenn beispielsweise ein Fernseher zwei verschiedene Netzwerkprotokolle unterstützt, wäre der AssociationEndpointContainer der Fernseher. Außerdem verfügt sie über zwei AssociationEndpoint-Objekte , die jedes Protokoll darstellen.

Die ID für dieses Objekt ist die AEP-Container-GUID als Zeichenfolge.

AssociationEndpointProtocol 9

Das DeviceInformation-Objekt stellt ein Protokoll dar, über das Zuordnungsendpunkte (AEPs) ermittelt werden können. Sie können eine Zuordnungsendpunktermittlung auf bestimmte Protokolle festlegen, indem Sie die Protokoll-ID verwenden. Mit dem folgenden Selektor wird die Ermittlung beispielsweise auf Bluetooth LE oder Bluetooth Classic festgelegt.

Weitere Informationen finden Sie unter Hinweise .

AssociationEndpointService 7

Das DeviceInformation-Objekt stellt einen Zuordnungsendpunktdienst (AEP) dar. Ein AssociationEndpointService-Objekt stellt einen funktionalen Dienstvertrag dar, der vom Gerät verfügbar gemacht wird. Nicht alle Protokolle unterstützen AEP-Dienste. Ein AssociationEndpointService kann über ein einzelnes übergeordnetes AssociationEndpointContainer-Objekt verfügen.

Die ID für dieses Objekt als Zeichenfolge.

Device 3

Das DeviceInformation-Objekt stellt ein Geräteobjekt dar. Dies kann auch als Devnode bezeichnet werden. Bei diesen Geräten handelt es sich um Objekte, die einen Teil der Gerätefunktionalität darstellen und optional Treiber darauf geladen haben. Wenn ein physisches Gerät mit Fenstern gekoppelt wird, werden mehrere Geräteobjekte erstellt. Ein Gerät enthält 0 oder mehr DeviceInterface-Objekte , ist ein untergeordnetes Element eines DeviceContainer-Objekts und bezieht sich auf 0 oder 1 AssociationEndpoint-Objekte .

Die ID für dieses Objekt ist die Geräte-instance-ID für dieses Objekt.

DeviceContainer 2

Das DeviceInformation-Objekt stellt einen Gerätecontainer dar. DeviceContainer-Objekte beschreiben eine Sammlung von Geräteobjekten, die auf demselben physischen Gerät vorhanden sind. Ein Multifunktionsdrucker kann z. B. mehrere verschiedene Geräte enthalten, aber alle sind als Teil des übergeordneten DeviceContainer-Objekts vorhanden.

Die ID für dieses Objekt ist die Gerätecontainer-GUID als Zeichenfolge.

DeviceInterface 1

Das DeviceInformation-Objekt stellt eine PnP-Geräteschnittstelle dar. Diese werden von Gerätetreibern verfügbar gemacht, damit eine App mit dem Gerät kommunizieren kann, in der Regel geräte-IOCTLS (Eingabeausgabesteuerelemente).

Dieser Typ des DeviceInformation-Objekts enthält alle Eigenschaften des PnP DeviceInterface-Objekts sowie einige Eigenschaften des übergeordneten PnP DeviceContainer-Objekts . Diese Kombination von Eigenschaften kann dem Benutzer angezeigt werden, wenn der Benutzer ein Gerät auswählen muss, um ein App-Szenario abzuschließen. Ein DeviceInterface-Objekt kann nur ein untergeordnetes Element eines DeviceContainer-Objekts sein.

Dies ist die Standardeinstellung DeviceInformationKind, wenn Geräte aufgelistet werden, ohne eine bestimmte Art anzugeben.

Die ID für dieses Objekt ist die Geräteschnittstellen-ID oder der Geräteschnittstellenpfad.

DeviceInterfaceClass 4

Das DeviceInformation-Objekt stellt eine Geräteschnittstellenklasse dar. Jedes DeviceInterface-Objekt gehört zu einer bestimmten DeviceInterfaceClass. Dies ähnelt einer Vertragsdefinition. Diese Verträge werden wie jedes andere PnP-Objekt mit einer ID und Eigenschaften dargestellt. DeviceInterfaceClass-Objekte enthalten wenig mehr Informationen als einen eindeutigen Bezeichner und möglicherweise einen Namen.

Die ID für dieses Objekt ist die GUID der Geräteschnittstellenklasse als Zeichenfolge.

DevicePanel 8

Das DeviceInformation-Objekt stellt eine einzelne physische Seite eines Gerätegehäuses dar.

Die ID für dieses Objekt als Zeichenfolge.

Unknown 0

Das Objekt hat einen unbekannten Typ. Dieser Wert wird nicht verwendet.

Hinweise

Ein DeviceInformationKind-Wert kann an die verschiedenen Enumerations-APIs übergeben werden, um den spezifischen Gerätetyp anzugeben, den Sie aufzählen möchten. In den meisten Szenarien erhalten Sie die DeviceInformation von der Geräteauswahl. Informationen zum Auflisten bestimmter Gerätetypen mithilfe von DeviceInformationKind finden Sie unter Auflisten von Geräten.

Das folgende Diagramm zeigt, wie die verschiedenen Gerätetypen miteinander interagieren. Außerdem werden die Eigenschaften angegeben, die die Beziehungen miteinander verknüpfen. Aus Leistungsgründen gehen viele der Beziehungsverbindungen nur in eine Richtung. Die Ausnahme ist AepContainer. Es enthält eine Liste seiner untergeordneten Objekte dank System.Devices.AepContainer.Children.

DeviceInformationKind-Beziehungen

Jede Zeile im obigen Diagramm stellt dar, wie die Beziehungen zwischen den Objekttypen definiert werden. Ein primäres Objekt verfügt über eine Kernobjekt-ID. Und dann gibt es eine -Eigenschaft für das verknüpfte Objekt, deren Wert der Kernobjekt-ID entspricht.

Beispielsweise gibt es 0 bis N DeviceInterface-Objekte für eine DeviceInterfaceClass. Daher sind 0 bis N DeviceInterface-Objekte vorhanden, die der Geräteschnittstellenklasse entsprechen, die durch das DeviceInterfaceClass-Objekt dargestellt wird. Die Kernobjekt-ID des DeviceInterfaceClass-Objekts ist eine GUID der Geräteschnittstellenklasse. DeviceInterface-Objekte verfügen wiederum über eine Eigenschaft mit dem Namen DEVPKEY_DeviceInterface_ClassGuid. Der Wert dieser Eigenschaft (guid) gibt an, was die Geräteschnittstellenklasse des DeviceInterface-Objekts ist (d. a. der Schnittstellentyp). Und natürlich ist dieser Wert gleich der Kernobjekt-ID des zugehörigen DeviceInterfaceClass-Objekts .

Sehen wir uns weitere Beispiele an. Im Folgenden finden Sie ein Beispiel für die Zuordnung der Geräteobjekte auf einer Webcam. Sie sehen einen Container, vier Geräteknoten (kurz Devnodes), und der erweiterte Devnode verfügt über fünf Geräteschnittstellen (von denen drei aktiviert sind).

Geräteobjekte für eine Webcam

Wenn Sie sich die Eigenschaften der ausgewählten (hervorgehobenen) Geräteschnittstelle ansehen, können Sie sehen, wie die Eigenschaften verwendet werden, um das Objektmodell miteinander zu verknüpfen. Die angezeigten Schlüsselnamen sind tatsächlich die Win32-Versionen (z. B. DEVPKEY_DeviceInterface_ClassGuid). In der Windows-Runtime (WinRT) werden die Eigenschaften vom Eigenschaftensystem zugeordnet (siehe Geräte (Windows-Eigenschaftssystem)). Das Äquivalent von DEVPKEY_DeviceInterface_ClassGuid ist System.Device.InterfaceClassGuid.

X

Wenn Sie z. B. eine Geräteschnittstellenklassen-ID (auch als Klassen-GUID bezeichnet) kennen, können Sie das Geräteschnittstellenklassenobjekt mit dieser ID (die kern-ID) finden. In der folgenden Abbildung sehen Sie, dass es sich nur um eine Kamerageräteschnittstellenklasse handeln muss. Weitere Informationen zu dieser Geräteschnittstellenklasse finden Sie hier. Jede Geräteschnittstelle, die sich in dieser Geräteschnittstellenklasse befindet, verfügt über einen DEVPKEY_DeviceInterface_ClassGuid-Eigenschaftswert, der der unten gezeigten Klassen-GUID entspricht.

X

Hier ist ein weiteres Beispiel: dieses Mal von einem Bluetooth-Headset. Der Devnode ist ausgewählt. Hervorgehoben ist die AEP-ID, der sie für das Zuordnungsendpunktobjekt zugeordnet ist. Dies veranschaulicht die Beziehung zwischen Device-Objekten und Aep-Objekten . DEVPKEY_Aep_AepId (Win32) oder System.Devices.Aep.AepId (WinRT) ist die Möglichkeit, diese beiden Objekttypen miteinander abzugleichen. Der Devnode verfügt über einen DEVPKEY_Aep_AepId-Eigenschaftswert , wenn er von einem gekoppelten Gerät stammt. Anschließend können Sie diesen Wert verwenden, um ein Aep-Objekt zu finden, dessen Kern-ID mit dem Wert übereinstimmt.

X

Und hier ist ein Beispiel für einen Devnode, der zeigt, zu welchem Bereich er gehört, zusammen mit seiner ID. Das Panel stellt die USB-Anschlüsse am oberen Rand des Gehäuses eines PCs dar. Dies veranschaulicht die Beziehung zwischen DevicePanel (oben in der Abbildung) und Device (bzw. devnode; unten in der Abbildung). Devnodes und Geräteschnittstellen können einen System.Devices.Panel.PanelId-Eigenschaftswert aufweisen. Anschließend können Sie diesen Wert verwenden, um ein DevicePanel-Objekt zu finden, dessen Kern-ID mit dem Wert übereinstimmt.

X

Für die AssociationEndpointProtocol-Konstante ist eine Beispiel-AQS-Selektorzeichenfolge:

System.Devices.Aep.ProtocolId:="{e0cbf06c-cd8b-4647-bb8a-263b43f0f974}" (für Bluetooth Classic) oder System.Devices.Aep.ProtocolId:=:"{bb7bb05e-5972-42b5-94fc-76eaa7084d49}" (für Bluetooth LE).

System.Devices.Aep.ProtocolId ist der Name des Protokolls in propsys; und DEVPKEY_Aep_ProtocolId ist der Win32 DEVPKEY.

Hier sehen Sie ein repräsentatives Beispiel dafür, wie ein Protokoll aufgezählt wird und wie es mit den AEP-Eigenschaften übereinstimmt (mit Anmerkungen in eckigen Klammern).

> pairtool /enum-protocols
...
Protocol ID:                Bluetooth [DEVPKEY_Aep_ProviderName]
Protocol Provider Name:     Bluetooth
Protocol Name:              Bluetooth Classic
Universal Protocol ID:      {e0cbf06c-cd8b-4647-bb8a-263b43f0f974} [DEVPKEY_Aep_ProtocolId // <propertyDescription name="System.Devices.Aep.ProtocolId" formatID="{3B2CE006-5E61-4FDE-BAB8-9B8AAC9B26DF}" propID="5">]
Protocol Provider Class ID: {4aa383d6-337a-43d3-a3fa-c14b26004130}

Protocol ID:                BluetoothLE [DEVPKEY_Aep_ProviderName]
Protocol Provider Name:     BluetoothLE
Protocol Name:              Bluetooth Low Energy
Universal Protocol ID:      {bb7bb05e-5972-42b5-94fc-76eaa7084d49} [DEVPKEY_Aep_ProtocolId]
Protocol Provider Class ID: {0829c308-d361-49f4-828b-506d552029ef} 
...
> pairtool /enum-endpoints

BluetoothLE#BluetoothLEdc:46:28:6a:16:01-20:4c:03:45:07:ca
  1)DEVPKEY_Aep_ContainerId [SYS] (null) DEVPROP_TYPE_GUID 16 {72888bff-567a-54f9-861a-73a3f2df469c} 
...
  30)DEVPKEY_Aep_ProviderName [SYS] (null) DEVPROP_TYPE_STRING 24 "BluetoothLE"
  33)DEVPKEY_Aep_ProtocolId [SYS] (null) DEVPROP_TYPE_GUID 16 {bb7bb05e-5972-42b5-94fc-76eaa7084d49}

Versionsverlauf

Windows-Version SDK-Version Mehrwert
1809 17763 DevicePanel

Gilt für:

Weitere Informationen