Compartir a través de


Función PropVariantToUInt16VectorAlloc (propvarutil.h)

Extrae datos de una estructura PROPVARIANT en un vector corto sin signo recién asignado .

Sintaxis

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

Parámetros

[in] propvar

Tipo: REFPROPVARIANT

Referencia a una estructura PROPVARIANT de origen.

[out] pprgn

Tipo: USHORT**

Cuando se devuelve esta función, contiene un puntero a un vector de valores cortos sin signo extraídos de la estructura PROPVARIANT de origen.

[out] pcElem

Tipo: ULONG*

Cuando se devuelve esta función, contiene el recuento de valores cortos sin signo extraídos de la estructura PROPVARIANT de origen.

Valor devuelto

Tipo: HRESULT

Esta función puede devolver uno de estos valores.

Código devuelto Descripción
S_OK
Devuelve S_OK si se ejecuta correctamente o un valor de error de lo contrario.
E_INVALIDARG
El PROPVARIANT no era del tipo adecuado.

Comentarios

Esta función auxiliar se usa en lugares donde la aplicación que realiza la llamada espera que un PROPVARIANT contenga un vector de valores cortos sin signo .

Si el PROPVARIANT de origen tiene VT_VECTORtipo VT_UI2 | o VT_ARRAY VT_UI2 | , esta función extrae un vector de valores cortos sin signo en un vector recién asignado. La aplicación que realiza la llamada es responsable de usar CoTaskMemFree para liberar el vector al que apunta pprgn cuando ya no es necesario.

Ejemplos

En el ejemplo siguiente, que se va a incluir como parte de un programa más grande, se muestra cómo usar PropVariantToUInt16VectorAlloc para tener acceso a un valor de vector corto sin signo en un PROPVARIANT.

// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid. The application is expecting propvar to contain a vector of <dtype rid="ushort"/> values.
USHORT *prgShorts;
ULONG cElems;
HRESULT hr = PropVariantToUInt16VectorAlloc(propvar, & prgShorts, &cElems);
if (SUCCEEDED(hr))
{
     // prgShorts now points to a vector of cElems USHORTs.
     CoTaskMemFree(prgShorts);
}

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP con SP2, Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 con SP1 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado propvarutil.h
Library Propsys.lib
Archivo DLL Propsys.dll (versión 6.0 o posterior)
Redistribuible Windows Desktop Search (WDS) 3.0

Consulte también

InitPropVariantFromUInt16Vector

PropVariantGetUInt16Elem

PropVariantToUInt16

PropVariantToUInt16Vector

VariantToUInt16Array