Partager via


Méthode IMFASFIndexer ::GetIndexStatus (wmcontainer.h)

Récupère les paramètres d’index pour un flux et un type d’index spécifiés.

Syntaxe

HRESULT GetIndexStatus(
  [in]      ASF_INDEX_IDENTIFIER *pIndexIdentifier,
  [out]     BOOL                 *pfIsIndexed,
  [out]     BYTE                 *pbIndexDescriptor,
  [in, out] DWORD                *pcbIndexDescriptor
);

Paramètres

[in] pIndexIdentifier

Pointeur vers une structure de ASF_INDEX_IDENTIFIER qui contient le numéro de flux et le type d’index pour lequel obtenir le status.

[out] pfIsIndexed

Variable qui récupère une valeur booléenne spécifiant si l’index décrit par pIndexIdentifier a été créé.

[out] pbIndexDescriptor

Mémoire tampon qui reçoit le descripteur d’index. Le descripteur d’index se compose d’une structure ASF_INDEX_DESCRIPTOR , éventuellement suivie de données spécifiques à l’index.

[in, out] pcbIndexDescriptor

Lors de l’entrée, spécifie la taille, en octets, de la mémoire tampon vers laquelle pbIndexDescriptor pointe. La valeur peut être égale à zéro si pbIndexDescriptor a la valeur NULL. À la sortie, reçoit la taille du descripteur d’index, en octets.

Valeur retournée

Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Code de retour Description
S_OK
S_OK
MF_E_BUFFERTOOSMALL
La taille de mémoire tampon spécifiée dans pcbIndexDescriptor est trop petite.

Remarques

Pour lire un index ASF existant, appelez IMFASFIndexer ::SetIndexByteStreams avant d’appeler cette méthode.

S’il existe un index pour le flux et que la valeur passée dans pcbIndexDescriptor est inférieure à la taille requise de la mémoire tampon pbIndexDescriptor , la méthode retourne MF_E_BUFFERTOOSMALL. La taille de mémoire tampon requise est retournée dans le paramètre pcbIndexDescriptor .

S’il n’existe aucun index pour le flux spécifié, la méthode retourne FALSE dans le paramètre pfIsIndexed .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête wmcontainer.h
Bibliothèque Mfuuid.lib

Voir aussi

Objet d’index ASF

IMFASFIndexer