Compartir a través de


Función PropVariantGetUInt16Elem (propvarutil.h)

Extrae un único elemento Int16 sin signo de una estructura PROPVARIANT de tipo VT_U12, VT_VECTOR | VT_U12 o VT_ARRAY | VT_U12.

Sintaxis

PSSTDAPI PropVariantGetUInt16Elem(
  [in]  REFPROPVARIANT propvar,
  [in]  ULONG          iElem,
  [out] USHORT         *pnVal
);

Parámetros

[in] propvar

Tipo: REFPROPVARIANT

Referencia a la estructura PROPVARIANT de origen.

[in] iElem

Tipo: ULONG

Índice de vector o matriz; de lo contrario, iElem debe ser 0.

[out] pnVal

Tipo: USHORT*

Cuando se devuelve esta función, contiene el valor del elemento extraído.

Valor devuelto

Tipo: HRESULT

Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Esta función auxiliar funciona para estructuras PROPVARIANT de los siguientes tipos:

  • VT_UI2
  • VT_VECTOR | VT_UI2
  • VT_ARRAY | VT_UI2
Si el PROPVARIANT de origen tiene el tipo VT_UI2, iElem debe ser 0. De lo contrario, iElem debe ser menor que el número de elementos del vector o matriz. Puede usar PropVariantGetElementCount para obtener el número de elementos en el vector o matriz.

Ejemplos

En el ejemplo siguiente, para incluirse como parte de un programa más grande, se muestra cómo usar PropVariantGetUInt16Elem con una instrucción de iteración para tener acceso a los valores de un PROPVARIANT.

// PROPVARIANT propvar;
// Assume propvar is initialized and valid;

if ((propvar.vt & VT_TYPEMASK) == VT_UI2)
{
    UINT cElem = PropVariantGetElementCount(propvar);
    HRESULT hr = <mark type="const">S_OK</mark>;

    for (UINT iElem = 0; SUCCEEDED(hr) && iElem < cElem; iElem ++)
    {
        USHORT nValue;
        hr = PropVariantGetUInt16Elem(propvar, iElem, &nValue);

        if (SUCCEEDED(hr))
        {
            // nValue is valid now
        }
    }
}

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 Búsqueda de escritorio de Windows (WDS) 3.0