Partager via


Fonction PropVariantToUInt32VectorAlloc (propvarutil.h)

Extrait les données d’une structure PROPVARIANT dans un vecteur ULONG nouvellement alloué.

Syntaxe

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

Paramètres

[in] propvar

Type : REFPROPVARIANT

Référence à une structure PROPVARIANT source.

[out] pprgn

Type : ULONG**

Lorsque cette fonction retourne, contient un pointeur vers un vecteur de valeurs ULONG extraites de la structure PROPVARIANT source.

[out] pcElem

Type : ULONG*

Lorsque cette fonction retourne, contient le nombre de valeurs ULONG extraites de la structure PROPVARIANT source.

Valeur retournée

Type : HRESULT

Cette fonction peut retourner l’une de ces valeurs.

Code de retour Description
S_OK
Retourne S_OK en cas de réussite, ou une valeur d’erreur dans le cas contraire.
E_INVALIDARG
LE PROPVARIANT n’était pas du type approprié.

Remarques

Cette fonction d’assistance est utilisée dans les endroits où l’application appelante s’attend à ce qu’un PROPVARIANT contienne un vecteur de valeurs ULONG .

Si la propriété PROPVARIANT source a le type VT_VECTOR | VT_UI4 ou VT_ARRAY | VT_UI4, cette fonction extrait un vecteur de valeurs ULONG dans un vecteur nouvellement alloué. L’application appelante est responsable de l’utilisation de CoTaskMemFree pour libérer le vecteur pointé par pprgn lorsqu’il n’est plus nécessaire.

Exemples

L’exemple suivant, à inclure dans un programme plus grand, montre comment utiliser PropVariantToUInt32VectorAlloc pour accéder à une valeur vectorielle ULONG dans un PROPVARIANT.

// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid. The application is expecting propvar to contain a vector of ULONG values.
ULONG *prgLongs;
ULONG cElems;
HRESULT hr = PropVariantToUInt32VectorAlloc(propvar, &prgLongs, &cElems);
if (SUCCEEDED(hr))
{
     // prgLongs now points to a vector of cElems ULONG.
     CoTaskMemFree(prgLongs);
}

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

InitPropVariantFromUInt32Vector

PropVariantGetUInt32Elem

PropVariantToUInt32

PropVariantToUInt32Vector

VariantToUInt32Array