Partager via


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

Commence une opération d’écriture asynchrone dans le flux.

Syntaxe

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

Paramètres

[in] pb

Pointeur vers une mémoire tampon contenant les données à écrire.

[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é écrites dans le flux, la méthode IMFAsyncCallback ::Invoke de l’objet de rappel est appelée. À ce stade, l’application doit appeler IMFByteStream ::EndWrite pour terminer la demande asynchrone.

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

Notes d’implémentation :Cette méthode doit mettre à jour la position actuelle dans le flux en ajoutant le nombre d’octets qui seront écrits dans le flux, qui est spécifié par la valeur retournée dans le pcbWritten, à la position actuelle. Les autres méthodes qui peuvent mettre à jour la position actuelle sont Read, BeginRead, Write, 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 Édition Media Center) 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 (inclure Mfidl.h)
Bibliothèque Mfuuid.lib

Voir aussi

IMFByteStream