DeviceInformationKind Enumerazione

Definizione

Definisce le costanti che specificano un tipo di oggetto DeviceInformation .

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
Ereditarietà
DeviceInformationKind
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)

Campi

AssociationEndpoint 5

L'oggetto DeviceInformation rappresenta un endpoint di associazione del dispositivo (AEP). Gli AEP rappresentano in genere un dispositivo individuato tramite un protocollo wireless o di rete. Alcuni di questi endpoint possono essere usati senza dover prima associare il dispositivo. Usare CanPair per determinare se un dispositivo supporta l'associazione e IsPaired per determinare se un dispositivo è già associato al sistema. Solo gli oggetti AssociationEndpoint hanno un valore non NULL per l'associazione. Per altre informazioni sull'associazione su una rete, vedere Enumerare i dispositivi in rete. Un oggetto AssociationEndpoint è un elemento figlio di un singolo oggetto AssociationEndpointContainer e può contenere 0 o più oggetti AssociationEndpointService .

ID per questo oggetto.

AssociationEndpointContainer 6

L'oggetto DeviceInformation rappresenta un contenitore dell'endpoint di associazione (AEP). Un oggetto AssociationEndpointContainer rappresenta un singolo dispositivo fisico che potrebbe avere più oggetti AssociationEndpoint associati. Ad esempio, se un televisore supporta due protocolli di rete diversi, AssociationEndpointContainer sarà la televisione. Avrebbe anche due oggetti AssociationEndpoint per rappresentare ogni protocollo.

L'ID per questo oggetto è il GUID del contenitore AEP come stringa.

AssociationEndpointProtocol 9

L'oggetto DeviceInformation rappresenta un protocollo tramite il quale è possibile individuare gli endpoint di associazione.The DeviceInformation object represents a protocol through which association endpoints (AEPs) can be discovered. È possibile definire l'ambito di un'individuazione dell'endpoint di associazione a protocolli specifici usando l'ID protocollo. Ad esempio, l'individuazione degli ambiti del selettore seguente viene individuata in Bluetooth LE o Bluetooth Classic.

Per altre info, vedi La sezione Osservazioni .

AssociationEndpointService 7

L'oggetto DeviceInformation rappresenta un servizio dell'endpoint di associazione (AEP). Un oggetto AssociationEndpointService rappresenta un contratto di servizio funzionale esposto dal dispositivo. Non tutti i protocolli supportano i servizi AEP. Un AssociationEndpointService può avere un singolo oggetto AssociationEndpointContainer padre.

ID per questo oggetto come stringa.

Device 3

L'oggetto DeviceInformation rappresenta un oggetto dispositivo. Questo può anche essere definito devnode. Questi dispositivi sono oggetti che rappresentano una parte della funzionalità del dispositivo e, facoltativamente, hanno driver caricati su di essi. Quando un dispositivo fisico è associato a finestre, vengono creati più oggetti Device . Un dispositivo contiene 0 o più oggetti DeviceInterface , è figlio di un oggetto DeviceContainer ed è correlato a 0 o 1 oggetti AssociationEndpoint .

L'ID per questo oggetto è l'ID istanza del dispositivo per questo oggetto.

DeviceContainer 2

L'oggetto DeviceInformation rappresenta un contenitore di dispositivi. Gli oggetti DeviceContainer descrivono una raccolta di oggetti dispositivo presenti nello stesso dispositivo fisico. Ad esempio, una stampante a più funzioni può includere diversi dispositivi, ma tutti esistono come parte dell'oggetto DeviceContainer padre.

L'ID per questo oggetto è il GUID del contenitore del dispositivo come stringa.

DeviceInterface 1

L'oggetto DeviceInformation rappresenta un'interfaccia del dispositivo PnP. Questi vengono esposti dai driver di dispositivo per consentire a un'app di comunicare con il dispositivo, in genere usando IOCTLS del dispositivo (controlli di output di input).

Questo tipo di oggetto DeviceInformation contiene tutte le proprietà dell'oggetto PnP DeviceInterface e alcune proprietà dell'oggetto PnP DeviceContainer padre. Questa combinazione di proprietà può essere presentata all'utente quando l'utente deve selezionare un dispositivo per completare uno scenario di app. Un oggetto DeviceInterface può essere figlio solo a un oggetto DeviceContainer .

Si tratta dell'impostazione predefinita DeviceInformationKind durante l'enumerazione dei dispositivi senza specificare un tipo specifico.

L'ID per questo oggetto è l'ID dell'interfaccia del dispositivo o il percorso dell'interfaccia del dispositivo.

DeviceInterfaceClass 4

L'oggetto DeviceInformation rappresenta una classe dell'interfaccia del dispositivo. Ogni oggetto DeviceInterface appartiene a un determinato DeviceInterfaceClass. È simile a una definizione di contratto. Questi contratti sono rappresentati con un ID e proprietà, esattamente come ogni altro oggetto PnP. Gli oggetti DeviceInterfaceClass contengono poche informazioni rispetto a un identificatore univoco ed eventualmente un nome.

L'ID per questo oggetto è il GUID della classe dell'interfaccia del dispositivo come stringa.

DevicePanel 8

L'oggetto DeviceInformation rappresenta un singolo viso fisico di un enclosure del dispositivo.

ID per questo oggetto come stringa.

Unknown 0

L'oggetto è di un tipo sconosciuto. Questo valore non viene utilizzato.

Commenti

Un valore DeviceInformationKind può essere passato alle varie API di enumerazione per indicare il tipo specifico di dispositivo da enumerare. Nella maggior parte degli scenari si riceverà DeviceInformation dal selettore di dispositivi. Per informazioni su come enumerare i tipi specifici di dispositivi usando DeviceInformationKind, vedi Enumerare i dispositivi.

Il diagramma seguente mostra come i diversi tipi di dispositivo interagiscono tra loro. Indica anche le proprietà che legano le relazioni tra loro. Per motivi di prestazioni, molte delle connessioni di relazione vanno in una sola direzione. L'eccezione è AepContainer. Contiene un elenco degli oggetti figlio grazie a System.Devices.AepContainer.Children.

Relazioni deviceInformationKind

Ogni riga del diagramma precedente rappresenta la modalità di definizione delle relazioni tra i tipi di oggetto. Un oggetto primario ha un ID oggetto principale. È quindi presente una proprietà sull'oggetto correlato il cui valore è uguale all'ID oggetto principale.

Ad esempio, sono presenti da 0 a N oggetti DeviceInterface per un Oggetto DeviceInterfaceClass. Gli oggetti DeviceInterface da 0 a N esistono quindi della classe dell'interfaccia del dispositivo rappresentata dall'oggetto DeviceInterfaceClass . L'ID principale dell'oggetto DeviceInterfaceClass è un GUID della classe dell'interfaccia del dispositivo. Gli oggetti DeviceInterface hanno a sua volta una proprietà denominata DEVPKEY_DeviceInterface_ClassGuid. Il valore di tale proprietà (GUID) indica qual è la classe dell'interfaccia dispositivo dell'oggetto DeviceInterface , ovvero il tipo di interfaccia. E naturalmente tale valore è uguale all'ID oggetto principale dell'oggetto DeviceInterfaceClass correlato.

Di seguito sono riportati altri esempi. Di seguito è riportato un esempio di come gli oggetti dispositivo mappano su una webcam. È possibile visualizzare un contenitore, quattro nodi del dispositivo (devnodes per brevità) e il nodo devnode espanso ha cinque interfacce del dispositivo (tre delle quali sono abilitate).

Oggetti dispositivo per una webcam

Esaminando le proprietà dell'interfaccia del dispositivo selezionata (evidenziata), è possibile vedere come vengono usate le proprietà per collegare il modello a oggetti. I nomi delle chiavi mostrati sono infatti le versioni Win32 (ad esempio, DEVPKEY_DeviceInterface_ClassGuid). Nella Windows Runtime (WinRT), le proprietà vengono mappate dal sistema di proprietà (vedere Dispositivi (sistema di proprietà Windows), quindi l'equivalente di DEVPKEY_DeviceInterface_ClassGuid è System.Device.InterfaceClassGuid.

X

Ad esempio, se si conosce un ID classe dell'interfaccia del dispositivo (noto anche come GUID classe), è possibile trovare l'oggetto classe dell'interfaccia del dispositivo con tale ID (ovvero il relativo ID principale). Nella figura seguente è possibile notare che si tratta solo di una classe di interfaccia del dispositivo Cameras ; e puoi visualizzare altre informazioni sulla classe dell'interfaccia del dispositivo. Qualsiasi interfaccia del dispositivo presente in questa classe dell'interfaccia del dispositivo avrà un valore della proprietà DEVPKEY_DeviceInterface_ClassGuid uguale al GUID classe illustrato di seguito.

X

Ecco un altro esempio; questa volta di un auricolare Bluetooth. Il nodo devnode è selezionato. Ed è evidenziato l'ID AEP a cui viene eseguito il mapping per l'oggetto endpoint di associazione. In questo modo viene illustrata la relazione tra oggetti Device e oggetti Aep . DEVPKEY_Aep_AepId (Win32) o System.Devices.Aep.AepId (WinRT) è il modo per associare questi due tipi di oggetto. Devnode avrà un valore della proprietà DEVPKEY_Aep_AepId se proviene da un dispositivo associato. È quindi possibile usare tale valore per trovare un oggetto Aep il cui ID di base corrisponde al valore.

X

Di seguito è riportato un esempio di devnode che mostra il pannello a cui appartiene, insieme al relativo ID. Il pannello rappresenta le porte USB nella parte superiore dello chassis di un personal computer. In questo modo viene illustrata la relazione tra DevicePanel (nella parte superiore dell'illustrazione) e Device (o devnode), nella parte inferiore dell'illustrazione. Le interfacce di devnodes e dispositivo possono avere un valore della proprietà System.Devices.Panel.PanelId . È quindi possibile usare tale valore per trovare un oggetto DevicePanel il cui ID di base corrisponde al valore.

X

Per la costante AssociationEndpointProtocol , una stringa del selettore AQS di esempio è:

System.Devices.Aep.ProtocolId:="{e0cbf06c-cd8b-4647-bb8a-263b43f0f974}" (per Bluetooth Classico) o System.Devices.Aep.ProtocolId:=:"{bb7bb05e-5972-42b5-94fc-76eaa7084d49}" (per Bluetooth LE).

System.Devices.Aep.ProtocolId è il nome del protocollo in propsys; e DEVPKEY_Aep_ProtocolId è Win32 DEVPKEY.

Ecco un esempio rappresentativo dell'enumerazione di un protocollo e di come corrisponde alle proprietà AEP (con annotazioni all'interno di parentesi quadre).

> 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}

Cronologia delle versioni

Versione di Windows Versione dell'SDK Valore aggiunto
1809 17763 DevicePanel

Si applica a

Vedi anche