Partager via


PropVariantToFileTimeVector, fonction (propvarutil.h)

Extrait des données d’une structure PROPVARIANT dans un vecteur FILETIME.

Syntaxe

PSSTDAPI PropVariantToFileTimeVector(
  [in]  REFPROPVARIANT propvar,
  [out] FILETIME       *prgft,
  [in]  ULONG          crgft,
  [out] ULONG          *pcElem
);

Paramètres

[in] propvar

Type : REFPROPVARIANT

Référence à une structure PROPVARIANT source.

[out] prgft

Type : FILETIME*

Pointe vers une mémoire tampon contenant des valeurs FILETIME crgft . Lorsque cette fonction est retournée, la mémoire tampon a été initialisée avec des éléments pcElem FILETIME extraits de la structure PROPVARIANT source.

[in] crgft

Type : ULONG

Taille dans les éléments de la mémoire tampon pointées par prgft.

[out] pcElem

Type : ULONG*

Lorsque cette fonction est retournée, contient le nombre d’éléments FILETIME extraits de la structure PROPVARIANT source.

Valeur retournée

Type : HRESULT

Retourne l’une des valeurs suivantes.

Code de retour Description
S_OK
Retourne S_OK en cas de réussite, ou une valeur d’erreur dans le cas contraire.
TYPE_E_BUFFERTOOSMALL
La source PROPVARIANT contenait plus de valeurs crgn. Mémoire tampon pointée par prgft.
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 une valeur de vecteur filetime avec un nombre fixe d’éléments.

Si la source PROPVARIANT a le type VT_VECTOR | VT_FILETIME, cette fonction d’assistance extrait jusqu’à crgft les valeurs FILETIME et les place dans la mémoire tampon vers laquelle pointe prgft. Si PROPVARIANT contient plus d’éléments que ne le fera la mémoire tampon prgft , cette fonction retourne une erreur et définit pcElem sur 0.

Les FILETIMEs de sortie utilisent le même fuseau horaire que les FILETIMEs sources.

Exemples

L’exemple suivant, à inclure dans le cadre d’un programme plus large, montre comment utiliser PropVariantToFileTimeVector pour accéder à une valeur vectorielle FILETIME dans un PROPVARIANT.

// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid
FILETIME rgTimes[4]; // The application is expecting propvar to hold 4 FILETIMEs in a vector
ULONG cTimes;
HRESULT hr = PropVariantToFileTimeVector(propvar, rgTime, ARRAYSIZE(rgTime), &cTimes);
if (SUCCEEDED(hr))
{
     if (cTimes == ARRAYSIZE(rgTime))
     {
         // The application got 4 FILETIMEs which are now stored in rgTime
     }
     else
     {
         // The application got cTimes which are stored in the first cTimes elements of rgTime
     }
}

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

InitPropVariantFromFileTimeVector

PropVariantToFileTime

PropVariantToFileTimeVectorAlloc