枚举所有的管理对象
- 创建一个确定管理范围的ManagementScope对象。
- 创建一个提供WQL查询语句的WqlObjectQuery对象
- 创建一个ManagementObjectSearcher对象,它的构造函数需要之前创建的两个对象作为参数。
- 调用ManagementObjectSearcher对象的Get()方法返回一个包括了返回的ManagementObject对象集的ManagementObjectCollection对象。
- 用for-each循环访问该ManagementObjectCollection对象中的元素完成枚举。
获取特定的某个管理对象
- 创建一个空的ManagementObject对象,准备存放返回值。
- 创建一个欲获取管理对象对应的ManagementScope对象。
- 创建一个用于定位该管理对象的ManagementPath对象。
- 设置之前创建的ManagementObject对象的Scope与Path属性。
- 调用该ManagementObject对象的Get()方法获取管理对象的信息。
创建一个新的管理对象
- 创建一个ManagementScope对象,并调用它的Connect()方法完成与托管系统的连接。
- 创建一个ManagementPath对象,确定新定理对象所处的位置。
- 利用之前创建的ManagementScope与ManagementPath对象作为构造参数,创建一个描述新管理对象的ManagementClass对象,并调用它的CreateInstance()方法创建新管理对象对应的ManagementObject实体。
- 设置好该ManagementObject对象的各个属性。
- 用PutType.CreateOnly这个枚举类型调用该ManagementObject对象的Put()方法完成更新。
删除一个管理对象
- 其操作类似于获取特定管理对象一样,只是最后一步调用的该ManagementObject对象的Delete()方法
执行特定管理对象上的某个方法
- 获取一个确定的ManagementObject对象。
- 利用一个ManagementBaseObject对象把欲调用方法的参数准备好,这是个数组。
- 然后调用ManagementObject对象的BeginInvoke()方法(有点类似于一些常用类的BeginInvoke()方法调用)