Partager via


Méthode IStream ::Clone (objidl.h)

La méthode Clone crée un objet stream avec son propre pointeur de recherche qui référence les mêmes octets que le flux d’origine.

Syntaxe

HRESULT Clone(
  [out] IStream **ppstm
);

Paramètres

[out] ppstm

En cas de réussite, pointez vers l’emplacement d’un pointeur IStream vers le nouvel objet de flux. Si une erreur se produit, ce paramètre a la valeur NULL.

Valeur retournée

Cette méthode peut retourner l’une de ces valeurs.

Code de retour Description
S_OK Le flux a été cloné avec succès.
E_PENDING Stockage asynchrone uniquement : une partie ou la totalité des données du flux n’est actuellement pas disponible.
STG_E_INSUFFICIENTMEMORY Le flux n’a pas été cloné en raison d’un manque de mémoire.
STG_E_INVALIDPOINTER Le pointeur ppStm n’est pas valide.
STG_E_REVERTED L’objet a été invalidé par une opération de rétablissement au-dessus de lui dans l’arborescence des transactions.

Remarques

La méthode Clone crée un objet de flux pour accéder aux mêmes octets, mais à l’aide d’un pointeur de recherche distinct. Le nouvel objet de flux voit les mêmes données que l’objet de flux source. Les modifications écrites dans un objet sont immédiatement visibles dans l’autre objet. Le verrouillage de plage est partagé entre les objets de flux.

Le paramètre initial du pointeur de recherche dans le flux cloné instance est identique au paramètre actuel du pointeur de recherche dans le flux d’origine au moment de l’opération de clonage.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête objidl.h
Bibliothèque Uuid.lib
DLL Ole32.dll

Voir aussi

IStream - Implémentation de fichier composé

IStream ::CopyTo