Partager via


Fonction InitPropVariantFromPropVariantVectorElem (propvarutil.h)

Initialise une structure PROPVARIANT basée sur un élément vecteur PROPVARIANT spécifié.

Syntaxe

PSSTDAPI InitPropVariantFromPropVariantVectorElem(
  [in]  REFPROPVARIANT propvarIn,
  [in]  ULONG          iElem,
  [out] PROPVARIANT    *ppropvar
);

Paramètres

[in] propvarIn

Type : REFPROPVARIANT

Structure PROPVARIANT source.

[in] iElem

Type : ULONG

Index de l’élément de structure PROPVARIANT source.

[out] ppropvar

Type : PROPVARIANT*

Lorsque cette fonction retourne, contient la structure PROPVARIANT initialisée.

Valeur retournée

Type : HRESULT

Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Cette fonction d’assistance fonctionne pour les structures PROPVARIANT des types suivants :

  • VT_LPWSTR
  • VT_BSTR
  • VT_BOOL
  • VT_I2
  • VT_I4
  • VT_I8
  • VT_U12
  • VT_U14
  • VT_U18
  • VT_FILETIME
  • VT_VECTOR | (toute VT_LPWSTR, VT_BSTR, VT_BOOL, VT_I2, VT_I4, VT_I8, VT_U12, VT_U14, VT_U18, VT_FILETIME)
  • VT_ARRAY | (toute VT_BSTR, VT_BOOL, VT_I2, VT_I4, VT_I8, VT_U12, VT_U14, VT_U18)
D’autres types peuvent être pris en charge à l’avenir.

Cette fonction extrait une valeur unique de la structure PROPVARIANT source et utilise cette valeur pour initialiser la structure PROPVARIANT de sortie. L’application appelante doit utiliser PropVariantClear pour libérer le PROPVARIANT auquel fait référence ppropvar lorsqu’il n’est plus nécessaire.

Si le PROPVARIANT source est un vecteur ou un tableau, iElem doit être inférieur au nombre d’éléments dans le vecteur ou le tableau.

Si le PROPVARIANT source a une seule valeur, iElem doit être 0.

Si le PROPVARIANT source est vide, cette fonction retourne toujours un code d’erreur.

Vous pouvez utiliser PropVariantGetElementCount pour obtenir le nombre d’éléments dans le vecteur ou le tableau.

Exemples

L’exemple de code suivant, à inclure dans le cadre d’un programme plus grand, montre comment utiliser InitPropVariantFromPropVariantVectorElem dans une instruction d’itération pour accéder aux valeurs d’un PROPVARIANT.

// PROPVARIANT propvar;
// Assume propvar is initialized and valid.
UINT cElem = PropVariantGetElementCount(propvar);
HRESULT hr = <mark type="const">S_OK</mark>;

for (UINT iElem = 0; SUCCEEDED(hr) && iElem < cElem; iElem ++)
{
    PROPVARIANT propvarElem = {0};

    hr = InitPropVariantFromPropVariantVectorElem(propvar, iElem, &propvarElem);

    if (SUCCEEDED(hr))
    {
        // propvarElem is now valid.

        PropVariantClear(&propvarElem);
    }
}

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP avec SP2, Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 avec SP1 [applications de bureau uniquement]
Plateforme cible Windows
En-tête propvarutil.h
Bibliothèque Propsys.lib
DLL Propsys.dll (version 6.0 ou ultérieure)
Composant redistribuable Windows Desktop Search (WDS) 3.0

Voir aussi

PropVariantGetElem