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 |
---|---|
|
Retorna S_OK se tiver êxito ou um valor de erro caso contrário. |
|
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 |