Schreiben eines Methodenanbieters

Ein Methodenanbieter ermöglicht WMI-Zugriff auf die Methoden einer Klasse. Beispielsweise kann eine Klasse, die eine Anwendung darstellt, über eine Methode verfügen, die die Anwendung beendet.

Das Ändern der Reihenfolge der Eingabe- und Ausgabeparameter einer Methode beim Aktualisieren eines vorhandenen Methodenanbieters kann zu einem Fehler bei Anwendungen führen, die die Methode aufrufen. Die Reihenfolge der Eingabe- oder Ausgabeparameter wird durch den Wert des ID-Qualifizierers für jeden Parameter festgelegt. Der erste Parameter hat den ID-Wert null (0). Fügen Sie neue Eingabeparameter am Ende der vorhandenen Parameter hinzu, anstatt sie in die bereits festgelegte Sequenz einzufügen.

Im folgenden Verfahren wird beschrieben, wie ein Methodenanbieter implementiert wird.

So implementieren Sie einen Methodenanbieter

  1. Entwerfen und registrieren Sie Ihren Klassenanbieters bei WMI.

    Klassenanbieter registrieren sich bei WMI, indem sie eine __Win32Provider-Instanz und eine __MethodProviderRegistration-Klasse erstellen. Weitere Informationen finden Sie unter Registrieren eines Methodenanbieters.

  2. Implementieren Sie die IWbemProviderInit-Schnittstelle für Ihren Anbieter.

    Hinweis

    Für Methodenanbieter wird dringend empfohlen, das Multithreadingmodell „Both“ zu verwenden.

     

  3. Implementieren Sie die Methode IWbemServices::ExecMethodAsync für Ihren Anbieter.

    Die IWbemServices-Schnittstelle ist die primäre Schnittstelle für einen Methodenanbieter. Weitere Informationen finden Sie unter Implementieren der primären Schnittstelle für einen Methodenanbieter.

  4. Fügen Sie zusätzlichen Code hinzu, der für Ihren Anbieter erforderlich ist.

    Beim Entwerfen Ihres Anbieters müssen Sie höchstwahrscheinlich WMI-Schnittstellen aufrufen. Weitere Informationen finden Sie unter Aufrufen einer Methode und Verwalten von Sicherheitsebenen in einem Anbieter.

    Beim Abrufen von Informationen für einen Client müssen Sie möglicherweise auf die Sicherheitsstufen für diesen Client zugreifen. Weitere Informationen finden Sie unter Identitätswechsel für einen Client.

  5. Ersetzen Sie den bereits vorhandenen Anbieter durch Ihren neuen Code.

    Sie müssen diesen Schritt nicht ausführen, wenn Sie keinen bereits vorhandenen Anbieter zum Kopieren haben. Weitere Informationen finden Sie unter Aktualisieren eines Anbieters.