Compartir a través de


Función PutMethod

Crea un método.

Nota

Esta API es solo para uso interno. No está pensada para usarla desde código del desarrollador.

Sintaxis

HRESULT PutMethod (
   [in] int                vFunc,
   [in] IWbemClassObject*  ptr,
   [in] LPCWSTR            wszName,
   [in] LONG               lFlags,
   [in] IWbemClassObject*  pInSignature,
   [in] IWbemClassObject*  pOutSignature
);

Parámetros

vFunc
[in] Este parámetro no se usa.

ptr
[in] El valor de este parámetro se corresponde con un puntero que apunta a una instancia de la interfaz IWbemClassObject.

wszName
[in] El valor de este parámetro se corresponde con el nombre del método que se va a crear.

lFlags
[in] Reservado. El valor de este parámetro deberá ser 0.

pSignatureIn
[in] El valor de este parámetro se corresponde con un puntero que apunta a una copia de la clase del sistema __Parameters en la que se incluyen los parámetros de entrada (in) del método . Este parámetro se ignorará si su valor se establece en null.

pSignatureOut
[in] El valor de este parámetro se corresponde con un puntero que apunta a una copia de la clase del sistema __Parameters en la que se incluyen los parámetros de salida (out) del método. Este parámetro se ignorará si su valor se establece en null.

Valor devuelto

Los siguientes valores que devuelve esta función se definen en el archivo de encabezado WbemCli.h, aunque también puede definirlos como constantes en el código. Puede consultarlos a continuación:

Constante Value Descripción
WBEM_E_INVALID_PARAMETER 0x80041008 Si se devuelve este valor, significará que uno o más parámetros no son válidos.
WBEM_E_INVALID_DUPLICATE_PARAMETER 0x80041043 Si se devuelve este valor, significará que el parámetro de entrada y salida ([in, out]) del método que se especificó en los objetos pInSignature y pOutSignature tienen calificadores distintos.
WBEM_E_MISSING_PARAMETER_ID 0x80041036 Si se devuelve este valor, significará que a uno de los parámetros del método le falta la especificación del calificador de id.
WBEM_E_NONCONSECUTIVE_PARAMETER_IDS 0x80041038 Si se devuelve este valor, significará que la serie de id. que se asignó a los parámetros del método no es consecutiva o no comienza en 0.
WBEM_E_PARAMETER_ID_ON_RETVAL 0x80041039 Si se devuelve este valor, significará que el valor que se devolvió a un método contiene un calificador de id.
WBEM_E_PROPAGATED_METHOD 0x80041034 Si se devuelve este valor, significará que se intentó reutilizar un nombre de método existente desde una clase primaria pero las signaturas no coincidieron.
WBEM_S_NO_ERROR 0 Si se devuelve este valor, significará que la llamada a la función se realizó correctamente.

Comentarios

Al usar esta función, se ajusta una llamada al método IWbemClassObject::PutMethod.

Esta llamada al método solo se admitirá si el valor del parámetro ptr se corresponde con una definición de clase CIM. No es posible manipular métodos mediante punteros IWbemClassObject que apunten a instancias de CIM.

Los usuarios no pueden 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.

Los parámetros de entrada (in) y salida (out) de un método se describen como propiedades en los objetos de tipo IWbemClassObject.

Para definir un parámetro de entrada o salida ([in/out]), puede agregar la misma propiedad a los 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 excepto la propiedad ReturnValue debe tener un calificador de id., que se establece con un valor numérico de base cero con el que se identifica el orden en que aparecen los parámetros. 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 cualquiera de estas condiciones, la función PutMethod devolverá el valor WBEM_E_NONCONSECUTIVE_PARAMETER_IDS.

Ejemplo

Para obtener un ejemplo, consulte el método IWbemClassObject::PutMethod.

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: WMINet_Utils.idl

Versiones de .NET Framework: está disponible desde la versión 4.7.2

Consulte también