Função VariantCopyInd (oleauto.h)
Libera a variante de destino e faz uma cópia da variante de origem, executando a indireção necessária se a origem for especificada para ser VT_BYREF.
Sintaxe
HRESULT VariantCopyInd(
[out] VARIANT *pvarDest,
[in] const VARIANTARG *pvargSrc
);
Parâmetros
[out] pvarDest
A variante de destino.
[in] pvargSrc
A variante de origem.
Retornar valor
Essa função pode retornar um desses valores.
Código de retorno | Descrição |
---|---|
|
Êxito. |
|
A variante contém uma matriz bloqueada. |
|
O tipo variante não é um tipo válido de variante. |
|
Um dos argumentos não é válido. |
|
Memória insuficiente para concluir a operação. |
Comentários
Essa função é útil quando uma cópia de uma variante é necessária e para garantir que ela não seja VT_BYREF, como ao manipular argumentos em uma implementação de IDispatch::Invoke.
Por exemplo, se a origem for um (VT_BYREF | VT_I2), o destino será um BYVAL | VT_I2. O mesmo vale para todas as combinações de VT_BYREF legais, incluindo VT_VARIANT.
Se pvargSrc for (VT_BYREF | VT_VARIANT) e a variante contida é VT_BYREF, a variante contida também é desreferenciada.
Essa função libera qualquer conteúdo existente de pvarDest.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | oleauto.h |
Biblioteca | OleAut32.lib |
DLL | OleAut32.dll |