Método IWbemClassObject::P utMethod (wbemcli.h)

IWbemClassObject::P utMethod se usa para crear un método. Esta llamada solo se admite si el objeto actual es una definición de clase CIM. No es posible manipular métodos mediante punteros IWbemClassObject que apunten a instancias de CIM.

El usuario no puede crear métodos con nombres que comiencen o terminen con un carácter de subrayado. Esto se reserva para las clases y las propiedades del sistema.

Sintaxis

HRESULT PutMethod(
  [in] LPCWSTR          wszName,
  [in] long             lFlags,
  [in] IWbemClassObject *pInSignature,
  [in] IWbemClassObject *pOutSignature
);

Parámetros

[in] wszName

Nombre del método que se crea.

[in] lFlags

Reservado. Este parámetro debe ser 0 (cero).

[in] pInSignature

Puntero a una copia de la clase del sistema __Parameters que contiene los parámetros in para el método . Este parámetro se omite si se establece en NULL.

[in] pOutSignature

Puntero a una copia de la clase del sistema __Parameters que contiene los parámetros out del objeto. Este parámetro se omite si se establece en NULL.

Valor devuelto

Este método devuelve un valor HRESULT que indica el estado de la llamada al método. En la lista siguiente se muestra el valor contenido en un HRESULT. Para obtener valores HRESULT generales, consulte Códigos de error del sistema.

Comentarios

Para un método, los parámetros de in y out se describen como propiedades en objetos IWbemClassObject .

Por ejemplo, considere el método siguiente:

Class MyClass{
    [key] string KeyVal;
    sint32 PropVal;
    sint32 ExampleMethod([in] sint32 Param1, [in] uint32 Param2, 
        [out] string Param3);
    HRESULT ReturnValue;
};

En el ejemplo anterior, la clase tiene un método . Para crear el método mediante programación, el usuario llama a IWbemClassObject::P utMethod con el parámetro pInSignature que apunta a una copia de la clase del sistema __Parameters que contiene dos propiedades: Param1 y Param2. POutSignature apunta a una copia de la clase del sistema __Parameters que contiene dos propiedades: Param3 y ReturnValue.

La propiedad ReturnValue del objeto al que apunta pOutSignature determina el tipo de valor devuelto del método. Si pOutSignature se establece en NULL, se supone que el tipo de valor devuelto es VOID.

Se puede definir un parámetro [in/out] agregando la misma propiedad a ambos objetos a los que apuntan los parámetros pInSignature y pOutSignature . En este caso, las propiedades compartirán el mismo valor de calificador de id.

Cada propiedad de un objeto de clase __Parameters distinto de ReturnValue debe tener un calificador de identificador , un numérico de base cero que identifica el orden en el que aparecen los parámetros. En este ejemplo, Param1 sería 0, Param2 1 y Param3 2. No puede haber dos parámetros con el mismo valor de id. y tampoco se puede omitir ningún valor de id. Si se produce alguna condición, IWbemClassObject::P utMethod devuelve WBEM_E_NONCONSECUTIVE_PARAMETER_IDS.

Nota El llamador debe llamar a IWbemClassObject::Release en los punteros pInSignature y pOutSignature cuando estos objetos ya no son necesarios.
 

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista
Servidor mínimo compatible Windows Server 2008
Plataforma de destino Windows
Encabezado wbemcli.h (include Wbemidl.h)
Library WbemUuid.lib
Archivo DLL CIMWin32.dll; Esscli.dll; Fastprox.dll; FrameDyn.dll; FrameDynOS.dll; Krnlprov.dll; Ncprov.dll; Wbemcore.dll; Wbemess.dll; Wmipiprt.dll

Consulte también

Crear un método

IWbemClassObject

IWbemClassObject::GetMethod