Compartir a través de


Función PropVariantGetInt32Elem (propvarutil.h)

Extrae un único elemento Int32 de un PROPVARIANT de tipo VT_I4, VT_VECTOR | VT_I4 o VT_ARRAY | VT_I4.

Sintaxis

PSSTDAPI PropVariantGetInt32Elem(
  [in]  REFPROPVARIANT propvar,
  [in]  ULONG          iElem,
  [out] LONG           *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: LONG*

Cuando esta función contiene el valor Int32 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 las estructuras PROPVARIANT de los siguientes tipos:

  • VT_I4
  • VT_VECTTOR | VT_I4
  • VT_ARRAY | VT_I4
Si el PROPVARIANT de origen tiene el tipo VT_I4, 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 del vector o matriz.

Ejemplos

En el ejemplo siguiente se usa este PropVariantGetInt32Elem con una instrucción de iteración para tener acceso a los valores de una estructura PROPVARIANT .

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

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

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

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

Requisitos

   
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

PropVariantGetElem