Cambio de la herencia de una instancia

Es posible que encuentre una situación en la que una instancia que se creó como elemento secundario de una clase primaria debe cambiar las clases primarias y convertirse en el elemento secundario de una clase primaria diferente. Por ejemplo, puede tener una clase derivada, ManualService, que describe un servicio manual y una clase derivada, AutoService, que describe un servicio automático. Ambas clases tienen muchas propiedades. No todas las propiedades son idénticas. Para cambiar un servicio de manual a automático, también debe cambiar la instancia que representa el servicio de ManualService a AutoService. En la versión actual de WMI, no se puede llamar al método IWbemServices::PutInstance con el parámetro pInst apuntando a una instancia de AutoService y a las propiedades clave describiendo la instancia ManualService. Si lo hace, elimina implícitamente la instancia ManualService original. En esencia, después de establecer la clase de una instancia, solo puede cambiar su clase primaria eliminando la instancia y volviendo a crearla como una instancia de la clase primaria nueva.

En este procedimiento se describe cómo mover una instancia de una clase a otra.

Procedimientos para mover una instancia de una clase a otra

  1. Elimine la instancia de la clase original.

  2. Cree la instancia en la clase nueva.

    WMI no permite que las aplicaciones muevan una instancia creándola en la clase nueva y actualizándola con la clave de la instancia original.

Para obtener más información, vea Manipulación de información de clase e instancia.