Compartir a través de


Eliminación de un solo elemento de una colección WMI

Uno de los principales propósitos al acceder a una colección es quitar un elemento de la colección. Puede quitar un elemento de una colección con una llamada al método SWbemPropertySet.Remove. Este método no está disponible para SWbemObjectSet o SWbemMethodSet.

Los elementos se quitan por nombre de SWbemPropertySet, SWbemQualifierSet y SWbemNamedValueSet. En cambio, los elementos de SWbemRefresher se quitan por índice, mientras que se quitan de SWbemPrivilegeSet por la constante que representa el nombre de privilegio.

Procedimientos para quitar un elemento de una colección

  • En el ejemplo de código siguiente se muestra cómo quitar el elemento con una llamada al método SWbemPropertySet.Remove.

    oclass.Properties_.Remove "Prop2"
    

    En el ejemplo siguiente se crea una clase denominada "NewClass" en el espacio de nombres root\default y se le agregan tres propiedades. A continuación, el script usa el código del ejemplo anterior para eliminar la segunda propiedad.

    ' Obtain an empty class and name it
    Const WBEM_CIMTYPE_STRING = 8
    Set objSWbemService = GetObject("winmgmts:root\default")
    Set objClass = objSWbemService.get()
    Wscript.Echo "Creating class NewClass"
    objClass.Path_.Class = "NewClass"
    
    ' Add three properties 
    For i = 1 to 3
        objClass.Properties_.Add "Prop" & i, WBEM_CIMTYPE_STRING
    Next
    Getprops()
    
    ' Remove the Prop2 property
    objClass.Properties_.Remove "Prop2"
    Wscript.Echo "Second property removed "
    Getprops()
    
    ' Write the changes to the class back
    objClass.Put_
    
    Sub Getprops()
        Wscript.Echo "Number of Properties = " _
            & objClass.Properties_.Count
        For Each prop in objClass.Properties_
            Wscript.Echo prop.name
        Next
    End Sub
    

Para obtener más información, vea Manipulación de la información de clase e instancia, Acceso a una colección y Eliminación de varios elementos de una colección.