De overerving van een instantie wijzigen
Het kan gebeuren dat een instantie, die als kind is gemaakt van een ouderklasse, van ouderklasse moet veranderen en het kind van een andere ouderklasse moet worden. U hebt bijvoorbeeld een afgeleide klasse, ManualService, een beschrijving van een handmatige service en een afgeleide klasse, AutoService, waarin een automatische service wordt beschreven. Beide klassen hebben een groot aantal eigenschappen. Niet alle eigenschappen zijn identiek. Als u een service wilt wijzigen van handmatig naar automatisch, moet u ook het exemplaar wijzigen dat de service vertegenwoordigt van ManualService- in AutoService-. In de huidige versie van WMI kunt u de IWbemServices::P utInstance methode niet aanroepen met de parameter pInst die verwijst naar een exemplaar van AutoService- en de belangrijkste eigenschappen die de ManualService-instantie beschrijven. Als u dit doet, verwijdert u impliciet de oorspronkelijke ManualService instantie. Nadat u de klasse van een exemplaar hebt vastgesteld, kunt u in wezen alleen de bovenliggende klasse van een exemplaar wijzigen door het exemplaar te verwijderen en het exemplaar opnieuw te maken als een exemplaar van de nieuwe bovenliggende klasse.
In de volgende procedure wordt beschreven hoe u een exemplaar van de ene klasse naar een andere klasse verplaatst.
Een exemplaar van de ene klasse naar een andere klasse verplaatsen
Verwijder het exemplaar uit de oorspronkelijke klasse.
Maak de instantie in de nieuwe klasse.
Met WMI kunnen toepassingen een exemplaar niet verplaatsen door deze in de nieuwe klasse te maken en vervolgens bij te werken met de sleutel van het oorspronkelijke exemplaar.
Zie voor meer informatie Manipuleren van Klasse- en Instantie-informatie.