PutMethod 函数
创建方法。
注意
此 API 仅供内部使用。 不应从开发人员代码中使用。
语法
HRESULT PutMethod (
[in] int vFunc,
[in] IWbemClassObject* ptr,
[in] LPCWSTR wszName,
[in] LONG lFlags,
[in] IWbemClassObject* pInSignature,
[in] IWbemClassObject* pOutSignature
);
参数
vFunc
[in] 未使用此参数。
ptr
[in] 指向 IWbemClassObject 实例的指针。
wszName
[in] 要创建的方法的名称。
lFlags
[in] 保留。 此参数必须为 0。
pSignatureIn
[in] 指向包含该方法的 in
参数的 __Parameters 系统类副本的指针。 如果设置为 null
,则忽略此参数。
pSignatureOut
[in] 指向包含该方法的 out
参数的 __Parameters 系统类副本的指针。 如果设置为 null
,则忽略此参数。
返回值
此函数返回的以下值是在 WbemCli.h 头文件中定义的,你也可以在代码中将这些值定义为常数:
常数 | Value | 说明 |
---|---|---|
WBEM_E_INVALID_PARAMETER |
0x80041008 | 一个或多个参数无效。 |
WBEM_E_INVALID_DUPLICATE_PARAMETER |
0x80041043 | pInSignature 和 pOutSignature 对象中指定的 [in, out] 方法参数具有不同的限定符。 |
WBEM_E_MISSING_PARAMETER_ID |
0x80041036 | 方法参数缺少 ID 限定符的规范。 |
WBEM_E_NONCONSECUTIVE_PARAMETER_IDS |
0x80041038 | 分配到方法参数的 ID 序列不是连续的,或者不从 0 开始。 |
WBEM_E_PARAMETER_ID_ON_RETVAL |
0x80041039 | 方法的返回值有 ID 限定符。 |
WBEM_E_PROPAGATED_METHOD |
0x80041034 | 尝试重用父类中的现有方法名称,而签名不匹配。 |
WBEM_S_NO_ERROR |
0 | 函数调用成功。 |
注解
此函数包装对 IWbemClassObject::PutMethod 方法的调用。
仅当 ptr
是 CIM 类定义时才支持此方法调用。 无法通过指向 CIM 实例的 IWbemClassObject 指针进行方法操作。
用户不能创建名称以下划线字符开头或结尾的方法。 此为系统类和属性保留。
对于方法,in
和 out
参数被描述为 IWbemClassObject 对象中的属性。
可通过向 pInSignature
和 pOutSignature
参数指向的两个对象添加相同的属性来定义 [in/out]
参数。 在这种情况下,属性共享相同的 ID 限定符值。
ReturnValue
以外的 __Parameters 类对象中的每个属性都必须有一个 ID 限定符,这是一个从零开始的数值,用于标识参数出现的顺序。 不能有两个参数具有相同的 ID 值,也不能跳过任何 ID 值。 如果出现任何一种情况,PutMethod
函数将返回 WBEM_E_NONCONSECUTIVE_PARAMETER_IDS
。
示例
有关示例,请参阅 IWbemClassObject::PutMethod 方法。
要求
平台:请参阅系统要求。
标头:WMINet_Utils.idl
.NET Framework 版本:自 4.7.2 起可用