描述
IWbemClassObject.Delete方法从CIM类定义及其所有限定符中删除指定的属性。因为实例不能拥有与所属类不同的内容,因此属性的删除操作只能在类定义中使用。如果在实例中的属性上调用删除,则操作成功;不过,除了删除该值之外,它只是重新设置为该类的默认值。
不可能删除从父类继承的属性。但是,如果指定了从父类继承的属性的重写默认值,则可以通过调用此方法来还原到父级的默认值。在这种情况下,返回WBEM_S_RESET_TO_DEFAULT。
无法删除系统属性。
C++ 语法
HRESULT Delete( [in] LPCWSTR wszName ); |
PowerBASIC 语法
METHOD Delete ( _ BYREF wszName AS WSTRINGZ _ ) AS LONG |
参数
wszName
要删除的属性名称。这必须指向一个有效的LPCWSTR。它被视为只读。
返回值
此方法返回一个HRESULT,指示方法调用的状态。下表列出了HRESULT中包含的值。
退货代码 |
描述 |
WBEM_E_FAILED |
已经有一般的失败。 |
WBEM_E_INVALID_OPERATION |
用户尝试删除无法删除的属性。 |
WBEM_E_INVALID_PARAMETER |
指定了无效的wszName值。 |
WBEM_E_NOT_FOUND |
指定的属性不存在。 |
WBEM_E_OUT_OF_MEMORY |
没有足够的内存来完成操作。 |
WBEM_E_PROPAGATED_PROPERTY |
用户尝试删除未拥有的属性。该属性从父类继承。 |
WBEM_E_SYSTEM_PROPERTY |
用户尝试删除系统属性。 |
WBEM_S_NO_ERROR |
通话成功。 |
WBEM_S_RESET_TO_DEFAULT |
调用者删除当前类的覆盖默认值。父类中此属性的默认值已重新激活。 |
要求
客户 |
需要Windows Vista,Windows XP,Windows 2000 Professional,Windows NT Workstation 4.0 SP4及更高版本,Windows Me,Windows 98或Windows 95。 |
服务器 |
需要Windows Server 2008,Windows Server 2003,Windows 2000 Server或Windows NT Server 4.0 SP4及更高版本。 |
头 |
在Wbemcli.inc中声明。 |
DLL |
需要Cimwin32.dll。 需要Esscli.dll。 需要Evntrprv.dll。 需要Fastprox.dll。 需要Framedyn.dll。 需要Krnlprov.dll。 需要Ncprov.dll。 需要Wbemcore.dll。 需要Wbemess.dll。 需要Wmipiprt.dll。 |