Méthode IMFByteStream ::BeginRead (mfobjects.h)

Commence une opération de lecture asynchrone à partir du flux.

Syntaxe

HRESULT BeginRead(
  [in] BYTE             *pb,
  [in] ULONG            cb,
  [in] IMFAsyncCallback *pCallback,
  [in] IUnknown         *punkState
);

Paramètres

[in] pb

Pointeur vers une mémoire tampon qui reçoit les données. L’appelant doit allouer la mémoire tampon.

[in] cb

Taille, en octets, de la mémoire tampon.

[in] pCallback

Pointeur vers l’interface IMFAsyncCallback d’un objet de rappel. L’appelant doit implémenter cette interface.

[in] punkState

Pointeur vers l’interface IUnknown d’un objet d’état, défini par l’appelant. Ce paramètre peut être NULL. Vous pouvez utiliser cet objet pour stocker des informations d’état. L’objet est retourné à l’appelant lorsque le rappel est appelé.

Valeur retournée

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

Remarques

Lorsque toutes les données ont été lues dans la mémoire tampon, la méthode IMFAsyncCallback ::Invoke de l’objet de rappel est appelée. À ce stade, l’application doit appeler IMFByteStream ::EndRead pour terminer la requête asynchrone.

Ne pas lire, écrire dans, libérer ou réallouer la mémoire tampon pendant qu’une lecture asynchrone est en attente.

Notes d’implémentation :Cette méthode doit mettre à jour la position actuelle dans le flux en ajoutant à la position actuelle le nombre d’octets qui seront lus, spécifié par la valeur retournée dans le paramètre pcbRead . Les autres méthodes qui peuvent mettre à jour la position actuelle sont BeginRead, Write, BeginWrite, Seek et SetCurrentPosition.

Cette interface est disponible sur les plateformes suivantes si les composants redistribuables du SDK Windows Media Format 11 sont installés :

  • Windows XP avec Service Pack 2 (SP2) et versions ultérieures.
  • Windows XP Media Center Edition 2005 avec KB900325 (Windows XP Media Center Edition 2005) et KB925766 (correctif cumulatif d’octobre 2006 pour Windows XP Media Center Edition) installés.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête mfobjects.h (include Mfidl.h)
Bibliothèque Mfuuid.lib

Voir aussi

IMFByteStream