Ta bort ett enskilt objekt från en WMI-samling
Ett av huvudsyftena med att komma åt en samling är att ta bort ett objekt från samlingen. Du kan ta bort ett objekt från en samling med ett anrop till metoden SWbemPropertySet.Remove. Den här metoden är inte tillgänglig för SWbemObjectSet eller SWbemMethodSet.
Objekt tas bort efter namn från SWbemPropertySet, SWbemQualifierSetoch SWbemNamedValueSet. Objekt i SWbemRefresher tas dock bort av index och från SWbemPrivilegeSet av konstanten som representerar behörighetsnamnet.
Ta bort ett objekt från en samling
I följande kodexempel visas hur du tar bort objektet med ett anrop till metoden SWbemPropertySet.Remove.
oclass.Properties_.Remove "Prop2"
I följande exempel skapas en ny klass med namnet "NewClass" i namnområdet root\default och tre egenskaper läggs till i den. Skriptet använder sedan koden från föregående exempel för att ta bort den andra egenskapen.
' 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
Mer information finns i Ändra klass- och instansinformation, åtkomst till en samlingoch Ta bort flera objekt från en samling.