Função InitVariantFromVariantArrayElem (propvarutil.h)
Inicializa uma estrutura VARIANT com um valor armazenado em outra estrutura VARIANT .
Sintaxe
PSSTDAPI InitVariantFromVariantArrayElem(
[in] REFVARIANT varIn,
[in] ULONG iElem,
[out] VARIANT *pvar
);
Parâmetros
[in] varIn
Tipo: REFVARIANT
Referência à estrutura VARIANT de origem.
[in] iElem
Tipo: ULONG
Índice de um dos elementos da estrutura VARIANT de origem.
[out] pvar
Tipo: VARIANT*
Quando essa função retorna, contém a estrutura VARIANT inicializada.
Retornar valor
Tipo: HRESULT
Se essa função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.
Comentários
Essa função auxiliar funciona para estruturas VARIANT dos seguintes tipos:
- VT_BSTR
- VT_BOOL
- VT_I2
- VT_I4
- VT_I8
- VT_U12
- VT_U14
- VT_U18
- VT_DATE
- VT_ARRAY | (qualquer um dos VT_BSTR, VT_BOOL, VT_I2, VT_I4, VT_I8, VT_U12, VT_U14, VT_U18, VT_DATE)
Essa função extrai um único valor da estrutura VARIANT de origem e usa esse valor para inicializar a estrutura VARIANT de saída. O aplicativo de chamada deve usar VariantClear para liberar o VARIANT referenciado por pvar quando ele não for mais necessário.
Se a VARIANT de origem for uma matriz, iElem deverá ser menor que o número de elementos na matriz.
Se a VARIANT de origem tiver um único valor, iElem deverá ser 0.
Se a VARIANT de origem estiver vazia, essa função sempre retornará um código de erro.
Você pode usar VariantGetElementCount para obter o número de elementos na matriz ou matriz.
Exemplos
O exemplo a seguir, a ser incluído como parte de um programa maior, demonstra como usar InitVariantFromVariantArrayElem em uma instrução de iteração para acessar os valores em uma VARIANT.
// VARIANT var;
// Assume var is initialized and valid.
UINT cElem = VariantGetElementCount(var);
HRESULT hr = <mark type="const">S_OK</mark>;
for (UINT iElem = 0; SUCCEEDED(hr) && iElem < cElem; iElem ++)
{
VARIANT varElem = {0};
hr = InitVariantFromVariantArrayElem(var, iElem, &varElem);
if (SUCCEEDED(hr))
{
// varElem is now valid.
VariantClear(&varElem);
}
}
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP com SP2, Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 com SP1 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | propvarutil.h |
Biblioteca | Propsys.lib |
DLL | Propsys.dll (versão 6.0 ou posterior) |
Redistribuível | Pesquisa da Área de Trabalho do Windows (WDS) 3.0 |