Share via


Ändern der Vererbung einer Instanz

Es kann vorkommen, dass eine Instanz, die als untergeordnetes Element einer übergeordneten Klasse erstellt wurde, die übergeordnete Klasse wechseln und das untergeordnete Element einer anderen übergeordneten Klasse werden muss. Beispielsweise verfügen Sie über eine abgeleitete Klasse, ManualService, die einen manuellen Dienst beschreibt, und eine abgeleitete Klasse AutoService, die einen automatischen Dienst beschreibt. Beide Klassen verfügen über eine große Anzahl von Eigenschaften. Nicht alle Eigenschaften sind identisch. Um einen Dienst von manuell in automatisch zu ändern, müssen Sie auch die Instanz, die den Dienst darstellt, von ManualService in AutoService ändern. In der aktuellen Version von WMI können Sie die IWbemServices::PutInstance-Methode nicht aufrufen, wenn der pInst-Parameter auf eine Instanz von AutoService zeigt und die Schlüsseleigenschaften die ManualService-Instanz beschreiben. In diesem Fall wird die ursprüngliche ManualService-Instanz implizit gelöscht. Nachdem Sie die Klasse einer Instanz festgelegt haben, können Sie die übergeordnete Klasse einer Instanz nur ändern, indem Sie die Instanz löschen und als Instanz der neuen übergeordneten Klasse neu erstellen.

Im folgenden Verfahren wird beschrieben, wie Sie eine Instanz von einer Klasse in eine andere Klasse verschieben.

So verschieben Sie eine Instanz von einer Klasse in eine andere Klasse

  1. Löschen Sie die Instanz aus der ursprünglichen Klasse.

  2. Erstellen Sie die Instanz unter der neuen Klasse.

    In WMI ist es für Anwendungen nicht möglich, eine Instanz zu verschieben, indem sie sie in der neuen Klasse erstellen und dann mit dem Schlüssel der ursprünglichen Instanz aktualisieren.

Weitere Informationen finden Sie unter Bearbeiten von Klassen- und Instanzinformationen.