VariantClear
9/8/2008
Essa função limpa uma variante.
Syntax
HRESULT VariantClear(
VARIANTARG FAR* pvarg
);
Parameters
- pvarg
[in, Out] Ponteiro para o VARIANTARG Para Clear.
Return Value
Retorna os valores HRESULT mostrados a seguinte tabela.
Valor | Descrição |
---|---|
S_OK |
O sucesso. |
DISP_E_ARRAYISLOCKED |
A variante contém uma matriz que está bloqueada. |
DISP_E_BADVARTYPE |
A variante tipo pvarg não é um válido tipo de variante. |
E_INVALIDARG |
Um argumento é inválido. |
Remarks
Use esta função para Clear variáveis do tipo VARIANTARG (ou Variant) antes de memória que contém o VARIANTARG é liberado (como quando um variável local vai out of escopo).
Limpa a função um VARIANTARG pela configuração de VT membro para VT_EMPTY e o wReserved membro para 0. O atual conteúdo de VARIANTARG são liberados pela primeira vez.
Se a pasta VT membro for VT_BSTR, o seqüência de caracteres é liberada.
Se a pasta VT membro for VT_DISPATCH, o objeto é liberado.
Se a pasta VT membro tem o VT_ARRAY bit definido, a matriz é liberado.
Em determinados casos, talvez seja preferível para Clear uma variante em codificar sem chamado VariantClear. De exemplo, você pode alteração de tipo de uma variante VT_l4 para outro tipo sem chamado essa função.
No entanto, você deve chamar VariantClear Se um tipo VT_* é recebido, mas não pode ser manipulado. Usando VariantClear Nesses casos garante que codificar continuarão a trabalho se automação adiciona variante tipos no futuro.
Passagem inválido (e, em algumas circunstâncias NULL) ponteiros para essa função faz com que uma terminação inesperada do aplicativo.
Neste contexto, um inválido ponteiro é aquele que aponta para um inválido é a região na memória, NULL, contém um ponteiro unaligned, aponta para memória bloco menor que necessário e assim por diante.
Requirements
Header | oleauto.h |
Library | oleaut32.lib |
Windows Embedded CE | Windows CE 2.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |