从 WMI 集合中删除单个项
访问集合的主要目的之一是从集合中删除项。 可以通过调用 SWbemPropertySet.Remove 方法从集合中删除项。 此方法不适用于 SWbemObjectSet 或 SWbemMethodSet。
项按名称从 SWbemPropertySet、SWbemQualifierSet 和 SWbemNamedValueSet 中删除。 但是,SWbemRefresher 中的项按索引删除,SWbemPrivilegeSet 中的项按表示特权名称的常量删除。
从集合中删除项
以下代码示例演示如何通过调用 SWbemPropertySet.Remove 方法删除项。
oclass.Properties_.Remove "Prop2"
以下示例在 root\default 命名空间中创建名为“NewClass”的新类,并为其添加三个属性。 然后,该脚本使用上一示例中的代码删除第二个属性。
' 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
有关详细信息,请参阅操作类和实例信息、访问集合和从集合中删除多个项。