Função Put
Define uma propriedade com nome para um novo valor.
Nota
Esta API destina-se apenas a utilização interna. Não se destina a ser utilizado a partir do código do programador.
Sintaxe
HRESULT Put (
[in] int vFunc,
[in] IWbemClassObject* ptr,
[in] LPCWSTR wszName,
[in] LONG lFlags,
[in] VARIANT* pVal,
[in] CIMTYPE vtType
);
Parâmetros
vFunc
[in] Este parâmetro não é utilizado.
ptr
[in] Um ponteiro para uma instância IWbemClassObject .
wszName
[in] O nome da propriedade. Este parâmetro não pode ser null
.
lFlags
[in] Reservado. Este parâmetro tem de ser 0.
pVal
[in] Um ponteiro para um valor válido VARIANT
que se torna o novo valor de propriedade. Se pVal
for null
ou apontar para um VARIANT
tipo, VT_NULL
a propriedade está definida como null
.
vtType
[in] O tipo de VARIANT
apontado por pVal
. Consulte a secção Observações para obter mais informações.
Valor devolvido
Os seguintes valores devolvidos por esta função são definidos no ficheiro de cabeçalho WbemCli.h ou pode defini-los como constantes no seu código:
Constante | Valor | Descrição |
---|---|---|
WBEM_E_FAILED |
0x80041001 | Ocorreu uma falha geral. |
WBEM_E_INVALID_PARAMETER |
0x80041008 | Um ou mais parâmetros não são válidos. |
WBEM_E_INVALID_PROPERTY_TYPE |
0x8004102a | O tipo de propriedade não é reconhecido. Este valor é devolvido ao criar instâncias de classe se a classe já existir. |
WBEM_E_OUT_OF_MEMORY |
0x80041006 | Não existe memória suficiente disponível para concluir a operação. |
WBEM_E_TYPE_MISMATCH |
0x80041005 | Por exemplos: indica que pVal aponta para um VARIANT tipo incorreto para a propriedade. Para definições de classe: a propriedade já existe na classe principal e o novo tipo COM é diferente do tipo COM antigo. |
WBEM_S_NO_ERROR |
0 | A chamada de função foi efetuada com êxito. |
Observações
Esta função encapsula uma chamada para o método IWbemClassObject::P ut .
Esta função substitui sempre o valor da propriedade atual por uma nova. Se o IWbemClassObject apontar para uma definição de classe, Put
cria ou atualiza o valor da propriedade. Quando IWbemClassObject aponta para uma instância CIM, Put
atualiza apenas o valor da propriedade; Put
não pode criar um valor de propriedade.
A propriedade do __CLASS
sistema só é gravável durante a criação da classe, quando pode não ficar em branco. Todas as outras propriedades do sistema são só de leitura.
Um utilizador não pode criar propriedades com nomes que comecem ou terminem com um sublinhado ("_"). Isto está reservado para classes e propriedades do sistema.
Se a propriedade definida pela Put
função existir na classe principal, o valor predefinido da propriedade será alterado, a menos que o tipo de propriedade não corresponda ao tipo de classe principal. Se a propriedade não existir e não for um erro de correspondência de tipo, a propriedade é criada.
Utilize o vtType
parâmetro apenas ao criar novas propriedades numa definição de classe CIM e pVal
é null
ou aponta para um VARIANT
tipo VT_NULL
. Neste caso, o vType
parâmetro especifica o tipo CIM da propriedade. Em todos os outros casos, vtType
tem de ser 0. vtType
também tem de ser 0 se o objeto subjacente for uma instância (mesmo que Val
seja null
) porque o tipo da propriedade é fixo e não pode ser alterado.
Exemplo
Por exemplo, veja o método IWbemClassObject::P ut .
Requisitos
Plataformas: Veja Requisitos do Sistema.
Cabeçalho: WMINet_Utils.idl
.NET Framework Versões: Disponível desde 4.7.2