Löschen einer Klasse
Im Gegensatz zum Löschen einer dynamischen Instanz ist das Löschen einer Klasse eine einfache Prozedur. Wie bereits erwähnt, werden Basisklassen oder abgeleitete Klassen jedoch nur selten gelöscht. Stattdessen wird eine -Instanz häufiger gelöscht. Die Skripterstellungs-API für WMI verwendet die gleichen Methoden, um entweder ein Klassenobjekt oder eine Instanz zu löschen. Weitere Informationen finden Sie unter Löschen einer Instanz. Informationen zum Entfernen von Klassen und Instanzen aus dem WMI-Repository finden Sie im Pragma deleteclass-Präprozessorbefehl.
Die COM-API für WMI verfügt über verschiedene Methoden zum Löschen einer Instanz und zum Löschen eines Objekts.
Im folgenden Verfahren wird beschrieben, wie eine Basisklasse oder abgeleitete Klasse gelöscht wird.
So löschen Sie eine Basisklasse oder abgeleitete Klasse
Rufen Sie entweder die Methode IWbemServices::D eleteClass oder IWbemServices::D eleteClassAsync auf.
Wie der Name schon sagt, löscht DeleteClassAsync eine Instanz asynchron, während DeleteClass eine Instanz synchron löscht. Um DeleteClassAsync zu verwenden, müssen Sie auch ein IWbemObjectSink-Objekt implementieren.
Hinweis
Da der Rückruf an die Senke möglicherweise nicht auf der gleichen Authentifizierungsebene zurückgegeben wird, die der Client erfordert, wird empfohlen, anstelle der asynchronen Kommunikation semisynchron zu verwenden. Weitere Informationen finden Sie unter Aufrufen einer Methode.