Condividi tramite


Funzione PropVariantGetInt16Elem (propvarutil.h)

Estrae un singolo elemento Int16 da una struttura PROPVARIANT di tipo VT_I2, VT_VECTOR | VT_I2 o VT_ARRAY | VT_I2.

Sintassi

PSSTDAPI PropVariantGetInt16Elem(
  [in]  REFPROPVARIANT propvar,
  [in]  ULONG          iElem,
  [out] SHORT          *pnVal
);

Parametri

[in] propvar

Tipo: REFPROPVARIANT

Riferimento alla struttura PROPVARIANT di origine.

[in] iElem

Tipo: ULONG

Vettore o indice matrice; in caso contrario, questo valore deve essere 0.

[out] pnVal

Tipo: SHORT*

Quando questa funzione viene restituita, contiene il valore dell'elemento Int32 estratto.

Valore restituito

Tipo: HRESULT

Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Questa funzione helper funziona per le strutture PROPVARIANT dei tipi seguenti.

  • VT_I2
  • VT_VECTOR | VT_I2
  • VT_ARRAY | VT_I2
Se l'origine PROPVARIANT ha tipo VT_I2, iElem deve essere 0. In caso contrario, iElem deve essere minore del numero di elementi nel vettore o nella matrice. È possibile usare PropVariantGetElementCount per ottenere il numero di elementi nel vettore o nella matrice.

Esempio

Nell'esempio seguente, da includere come parte di un programma più ampio, viene illustrato come usare PropVariantGetInt16Elem con un'istruzione di iterazione per accedere ai valori in un PROPVARIANT.

// PROPVARIANT propvar;
    // Assume propvar is initialized and valid;
    
    if ((propvar.vt & VT_TYPEMASK) == VT_I2)
    {
        UINT cElem = PropVariantGetElementCount(propvar);
        HRESULT hr = <mark type="const">S_OK</mark>;
    
        for (UINT iElem = 0; SUCCEEDED(hr) && iElem < cElem; iElem ++)
        {
            SHORT nValue;
            hr = PropVariantGetInt16Elem(propvar, iElem, &nValue);
    
            if (SUCCEEDED(hr))
            {
                // nValue is valid now
            }
        }
    }

Requisiti

Requisito Valore
Client minimo supportato Windows XP con SP2, Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2003 con SP1 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione propvarutil.h
Libreria Propsys.lib
DLL Propsys.dll (versione 6.0 o successiva)
Componente ridistribuibile Windows Desktop Search (WDS) 3.0

Vedi anche

PropVariantGetElem