Compartilhar via


Função Next

Recupera a próxima propriedade em uma enumeração que começa com uma chamada para BeginEnumeration.

Observação

Esta API é somente para uso interno. Ela não é destinada ao uso do código do desenvolvedor.

Sintaxe

HRESULT Next (
   [in] int               vFunc,
   [in] IWbemClassObject* ptr,
   [in] LONG              lFlags,
   [out] BSTR*            pstrName,
   [out] VARIANT*         pVal,
   [out] CIMTYPE*         pvtType,
   [out] LONG*            plFlavor
);

Parâmetros

vFunc
[in] Esse parâmetro não está em uso.

ptr
[in] Um ponteiro para uma instância IWbemClassObject.

lFlags
[in] Reservado. Esse parâmetro deve ser 0.

pstrName
[out] Uma nova BSTR que contém o nome da propriedade. Você pode definir esse parâmetro como null se o nome não for necessário.

pVal
[out] Um VARIANT preenchido com o valor da propriedade. Você pode definir esse parâmetro como null se o valor não for necessário. Se a função retornar um código de erro, oVARIANT passado para pVal não será modificado.

pvtType
[out] Um ponteiro para uma variável CIMTYPE (um LONG no qual o tipo da propriedade é colocado). O valor dessa propriedade pode ser um VT_NULL_VARIANT, caso em que é necessário determinar o tipo real da propriedade. Este parâmetro também pode ser null.

plFlavor
[out] null ou um valor que recebe informações sobre a origem da propriedade. Consulte a seção [Comentários] para obter valores possíveis.

Valor retornado

Os seguintes valores retornados por essa função são definidos no arquivo de cabeçalho WbemCli.h, ou você pode defini-los como constantes em seu código:

Constante Valor Descrição
WBEM_E_FAILED 0x80041001 Houve uma falha geral.
WBEM_E_INVALID_PARAMETER 0x80041008 Um parâmetro é inválido.
WBEM_E_UNEXPECTED 0x8004101d Não houve nenhuma chamada para a função BeginEnumeration.
WBEM_E_OUT_OF_MEMORY 0x80041006 Não há memória suficiente disponível para iniciar uma nova enumeração.
WBEM_E_TRANSPORT_FAILURE 0x80041015 Falha na chamada de procedimento remoto entre o processo atual e o Gerenciamento do Windows.
WBEM_S_NO_ERROR 0 A chamada de função foi bem-sucedida.
WBEM_S_NO_MORE_DATA 0x40005 Não há mais propriedades na enumeração.

Comentários

Essa função encapsula uma chamada para o método IWbemClassObject::Next.

Esse método também retorna as propriedades do sistema.

Se o tipo subjacente da propriedade for um caminho de objeto, uma data, uma hora ou outro tipo especial, o tipo retornado não conterá informações suficientes. O chamador deve examinar a CIMTYPE para a propriedade especificada para determinar se a propriedade é uma referência de objeto, uma data ou hora ou outro tipo especial.

Se plFlavor não for null, o valor de LONG receberá informações sobre a origem da propriedade, da seguinte maneira:

Constante Valor Descrição
WBEM_FLAVOR_ORIGIN_SYSTEM 0x40 A propriedade é uma propriedade padrão do sistema.
WBEM_FLAVOR_ORIGIN_PROPAGATED 0x20 Para uma classe: a propriedade é herdada da classe pai.
Para uma instância: a propriedade, embora herdada da classe pai, não foi modificada pela instância.
WBEM_FLAVOR_ORIGIN_LOCAL 0 Para uma classe: a propriedade pertence à classe derivada.
Para uma instância: a propriedade é modificada pela instância; ou seja, um valor foi fornecido ou um qualificador foi adicionado ou modificado.

Requisitos

Plataformas: confira Requisitos do sistema.

Header: WMINet_Utils.idl

Versões do .NET Framework: Disponível desde 4.7.2

Confira também