Método IWbemClassObject::P utMethod (wbemcli.h)
O IWbemClassObject::P utMethod é usado para criar um método. Essa chamada só terá suporte se o objeto atual for uma definição de classe CIM. A manipulação de método não está disponível em ponteiros IWbemClassObject que apontam para instâncias CIM.
O usuário não pode criar métodos com nomes que começam ou terminam com um sublinhado. Isso é reservado para propriedades e classes de sistema.
Sintaxe
HRESULT PutMethod(
[in] LPCWSTR wszName,
[in] long lFlags,
[in] IWbemClassObject *pInSignature,
[in] IWbemClassObject *pOutSignature
);
Parâmetros
[in] wszName
O nome do método que é criado.
[in] lFlags
Reservado. Esse parâmetro deve ser 0 (zero).
[in] pInSignature
Um ponteiro para uma cópia da classe do sistema __Parameters que contém os parâmetros in para o método . Esse parâmetro será ignorado se definido como NULL.
[in] pOutSignature
Um ponteiro para uma cópia da classe do sistema __Parameters que contém os parâmetros out para o objeto. Esse parâmetro será ignorado se definido como NULL.
Retornar valor
Esse método retorna um HRESULT que indica o status da chamada de método. A lista a seguir lista o valor contido em um HRESULT. Para obter valores gerais de HRESULT , consulte Códigos de erro do sistema.
Comentários
Para um método , os parâmetros de entrada e saída são descritos como propriedades em objetos IWbemClassObject .
Por exemplo, considere o seguinte método:
Class MyClass{
[key] string KeyVal;
sint32 PropVal;
sint32 ExampleMethod([in] sint32 Param1, [in] uint32 Param2,
[out] string Param3);
HRESULT ReturnValue;
};
No exemplo anterior, a classe tem um método . Para criar o método programaticamente, o usuário chama IWbemClassObject::P utMethod com o parâmetro pInSignature que aponta para uma cópia da classe do sistema __Parameters que contém duas propriedades: Param1 e Param2. O pOutSignature aponta para uma cópia da classe do sistema __Parameters que contém duas propriedades: Param3 e ReturnValue.
A propriedade ReturnValue do objeto apontado por pOutSignature determina o tipo de retorno do método. Se pOutSignature for definido como NULL, o tipo de retorno será considerado VOID.
Um parâmetro [in/out] pode ser definido adicionando a mesma propriedade a ambos os objetos apontados pelos parâmetros pInSignature e pOutSignature . Nesse caso, as propriedades compartilham o mesmo valor do qualificador de ID.
Cada propriedade em um objeto de classe __Parameters diferente de ReturnValue deve ter um qualificador de ID , um numérico baseado em zero que identifica a ordem na qual os parâmetros aparecem. Neste exemplo, Param1 seria 0, Param2 1 e Param3 2. Nenhum parâmetro pode ter o mesmo valor de ID e nenhum valor de ID pode ser ignorado. Se uma das condições ocorrer, IWbemClassObject::P utMethod retornaráWBEM_E_NONCONSECUTIVE_PARAMETER_IDS.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista |
Servidor mínimo com suporte | Windows Server 2008 |
Plataforma de Destino | Windows |
Cabeçalho | wbemcli.h (include Wbemidl.h) |
Biblioteca | WbemUuid.lib |
DLL | CIMWin32.dll; Esscli.dll; Fastprox.dll; FrameDyn.dll; FrameDynOS.dll; Krnlprov.dll; Ncprov.dll; Wbemcore.dll; Wbemess.dll; Wmipiprt.dll |