Teilen über


Implementieren der primären Schnittstelle für einen Eigenschaftenanbieter

Ein Eigenschaftenanbieter verwendet die IWbemPropertyProvider-Methoden als primäre Schnittstelle zu WMI. Mit IWbemPropertyProvider können Sie den Code implementieren, um Klassen- und Instanzeigenschaften abzurufen und zu ändern.

In der folgenden Tabelle sind die IWbemPropertyProvider-Methoden aufgeführt, die Sie für einen Eigenschaftenanbieter implementieren können.

Methode Funktion
GetProperty Abruf
PutProperty Modifikation (Modification)

 

Hinweis

Sie müssen einen Eigenschaftenanbieter als prozessinternen Anbieter implementieren. WMI initialisiert Eigenschaftenanbieter, die als Dienste oder ausführbare Dateien geschrieben wurden, ruft jedoch niemals ihre GetProperty- und PutProperty-Methoden auf.

 

Wenn Sie sich dafür entscheiden, eine dieser Methoden nicht zu unterstützen, kann Ihr Anbieter eine Stubimplementierung bereitstellen, die WBEM_E_PROVIDER_NOT_CAPABLE zurückgibt.

Ein Eigenschaftenanbieter identifiziert eine verwaltete Klasse oder Instanz durch einen Satz von drei Qualifizierern: PropertyContext, InstanceContext und ClassContext. WMI übergibt Zeichenfolgenkonstanten, die diese drei Qualifizierer beschreiben, an Ihren Eigenschaftenanbieter.

Ihr Eigenschaftenanbieter muss bereit sein, die folgenden Typen von Kontextqualifizierern zu verarbeiten:

  • Der InstanceContext-Qualifizierer ist an eine Instanz angefügt und enthält Informationen, die für jede Eigenschaft in der Instanz gelten.
  • Der ClassContext-Qualifizierer ist an eine Klasse angefügt und enthält Informationen, die für jede Instanz in der Klasse gelten. In einer Klasse, die zum Speichern der vom Registrierungsanbieter bereitgestellten Daten verwendet wird, kann ClassContext beispielsweise der Pfad zu dem Registrierungsschlüssel sein, der die zu meldenden Eigenschaften enthält.
  • Der PropertyContext-Qualifizierer gibt kontextspezifische Informationen an, die sich auf die Eigenschaft beziehen. In einer Klasse, die zum Speichern von Daten verwendet wird, die vom Registrierungsanbieter bereitgestellt werden, gibt PropertyContext beispielsweise den Namen des Registrierungswerts an, der von der Eigenschaft gespeichert werden soll.

Diese Qualifizierer können zusammenarbeiten. Sie können sowohl einen InstanceContext- als auch einen PropertyContext-Wert festlegen, um dem Anbieter mitzuteilen, wie bestimmte Arten von Instanzen behandelt werden sollen. Sie können z. B. Instanzen markieren, die der Anbieter als lesbar erkennt, die aber nur über eine schreibbare Eigenschaft verfügen.

Der am häufigsten verwendete Qualifizierer ist PropertyContext. Daher stellt WMI den DynProps-Qualifizierer als Tastenkombination bereit. WMI berücksichtigt, dass jede Eigenschaft in einer Instanz, die mit DynProps gekennzeichnet ist, auch über die Qualifizierer Dynamic, Provider und PropertyContext verfügt.