Compartilhar via


Função PropVariantToUInt32VectorAlloc (propvarutil.h)

Extrai dados de uma estrutura PROPVARIANT em um vetor ULONG recém-alocado.

Sintaxe

PSSTDAPI PropVariantToUInt32VectorAlloc(
  [in]  REFPROPVARIANT propvar,
  [out] ULONG          **pprgn,
  [out] ULONG          *pcElem
);

Parâmetros

[in] propvar

Tipo: REFPROPVARIANT

Referência a uma estrutura PROPVARIANT de origem .

[out] pprgn

Tipo: ULONG**

Quando essa função retorna, contém um ponteiro para um vetor de valores ULONG extraídos da estrutura PROPVARIANT de origem.

[out] pcElem

Tipo: ULONG*

Quando essa função retorna, contém a contagem de valores ULONG extraídos da estrutura PROPVARIANT de origem.

Retornar valor

Tipo: HRESULT

Essa função pode retornar um desses valores.

Código de retorno Descrição
S_OK
Retorna S_OK se tiver êxito ou um valor de erro caso contrário.
E_INVALIDARG
O PROPVARIANT não era do tipo apropriado.

Comentários

Essa função auxiliar é usada em locais em que o aplicativo de chamada espera que um PROPVARIANT mantenha um vetor de valores ULONG .

Se o PROPVARIANT de origem tiver tipo VT_VECTOR | VT_UI4 ou VT_ARRAY | VT_UI4, essa função extrairá um vetor de valores ULONG em um vetor recém-alocado. O aplicativo de chamada é responsável por usar CoTaskMemFree para liberar o vetor apontado por pprgn quando ele não é mais necessário.

Exemplos

O exemplo a seguir, a ser incluído como parte de um programa maior, demonstra como usar PropVariantToUInt32VectorAlloc para acessar um valor de vetor ULONG em um PROPVARIANT.

// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid. The application is expecting propvar to contain a vector of ULONG values.
ULONG *prgLongs;
ULONG cElems;
HRESULT hr = PropVariantToUInt32VectorAlloc(propvar, &prgLongs, &cElems);
if (SUCCEEDED(hr))
{
     // prgLongs now points to a vector of cElems ULONG.
     CoTaskMemFree(prgLongs);
}

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

Confira também

InitPropVariantFromUInt32Vector

PropVariantGetUInt32Elem

PropVariantToUInt32

PropVariantToUInt32Vector

VariantToUInt32Array