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

El método Clone crea un nuevo objeto de secuencia con su propio puntero de búsqueda que hace referencia a los mismos bytes que la secuencia original.

Sintaxis

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

Parámetros

[out] ppstm

Cuando se ejecuta correctamente, puntero a la ubicación de un puntero IStream al nuevo objeto de secuencia. Si se produce un error, este parámetro es NULL.

Valor devuelto

Este método puede devolver uno de estos valores.

Código devuelto Descripción
S_OK La secuencia se clonó correctamente.
E_PENDING Solo almacenamiento asincrónico: la parte o todos los datos de la secuencia no están disponibles actualmente.
STG_E_INSUFFICIENTMEMORY La secuencia no se clonó debido a una falta de memoria.
STG_E_INVALIDPOINTER El puntero ppStm no es válido.
STG_E_REVERTED El objeto se ha invalidado por una operación de reversión por encima de él en el árbol de transacciones.

Comentarios

El método Clone crea un nuevo objeto de secuencia para tener acceso a los mismos bytes, pero mediante un puntero de búsqueda independiente. El nuevo objeto de secuencia ve los mismos datos que el objeto de flujo de origen. Los cambios escritos en un objeto son visibles inmediatamente en el otro. El bloqueo de intervalo se comparte entre los objetos de secuencia.

La configuración inicial del puntero de búsqueda en la instancia de secuencia clonada es la misma que la configuración actual del puntero de búsqueda en la secuencia original en el momento de la operación de clonación.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado objidl.h
Library Uuid.lib
Archivo DLL Ole32.dll

Consulte también

IStream: implementación de archivos compuestos

IStream::CopyTo