Implementazione dell'interfaccia primaria per un provider di proprietà

Un provider di proprietà usa i metodi IWbemPropertyProvider come interfaccia primaria per WMI. Con IWbemPropertyProvider è possibile implementare il codice per recuperare e modificare le proprietà della classe e dell'istanza.

Nella tabella seguente sono elencati i metodi IWbemPropertyProvider che è possibile implementare per un provider di proprietà.

Metodo Funzionalità
Getproperty Recupero
PutProperty Modifica

 

Nota

È necessario implementare un provider di proprietà come provider in-process. WMI inizializzerà i provider di proprietà scritti come servizi o file eseguibili, ma non chiamerà mai i metodi GetProperty e PutProperty .

 

Se si sceglie di non supportare uno di questi metodi, il provider può fornire un'implementazione stub che restituisce WBEM_E_PROVIDER_NOT_CAPABLE.

Un provider di proprietà identifica una classe o un'istanza gestita da un set di tre qualificatori: PropertyContext, InstanceContext e ClassContext. WMI passerà costanti di stringa che descrivono questi tre qualificatori al provider di proprietà.

Il provider di proprietà deve essere preparato per gestire i tipi seguenti di qualificatori di contesto:

  • Il qualificatore InstanceContext è collegato a un'istanza e contiene informazioni applicabili a ogni proprietà nell'istanza.
  • Il qualificatore ClassContext è collegato a una classe e contiene informazioni applicabili a ogni istanza della classe. Ad esempio, in una classe usata per archiviare i dati forniti dal provider del Registro di sistema, ClassContext può essere il percorso della chiave del Registro di sistema che contiene le proprietà da segnalare.
  • Il qualificatore PropertyContext specifica informazioni specifiche del contesto relative alla proprietà. Ad esempio, in una classe usata per archiviare i dati forniti dal provider del Registro di sistema, PropertyContext specifica il nome del valore del Registro di sistema da archiviare dalla proprietà.

Questi qualificatori possono collaborare. È possibile designare sia un valore InstanceContext che PropertyContext per indicare al provider come trattare tipi specifici di istanze. Ad esempio, è possibile contrassegnare le istanze che il provider riconoscerà come leggibile ma con una sola proprietà scrivibile.

Il qualificatore più comune usato è PropertyContext. Pertanto, WMI fornisce il qualificatore DynProps come collegamento. WMI considera ogni proprietà in un'istanza contrassegnata con DynProps per avere anche i qualificatori Dynamic, Provider e PropertyContext .