Condividi tramite


Metodo IStream::Clone (objidl.h)

Il metodo Clone crea un nuovo oggetto di flusso con un puntatore di ricerca personalizzato che fa riferimento agli stessi byte del flusso originale.

Sintassi

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

Parametri

[out] ppstm

Al termine, puntatore alla posizione di un puntatore IStream al nuovo oggetto di flusso. Se si verifica un errore, questo parametro è NULL.

Valore restituito

Questo metodo può restituire uno di questi valori.

Codice restituito Descrizione
S_OK Il flusso è stato clonato correttamente.
E_PENDING Solo archiviazione asincrona: parte o tutti i dati del flusso non sono attualmente disponibili.
STG_E_INSUFFICIENTMEMORY Il flusso non è stato clonato a causa di una mancanza di memoria.
STG_E_INVALIDPOINTER Il puntatore ppStm non è valido.
STG_E_REVERTED L'oggetto è stato invalidato da un'operazione di ripristino sopra di essa nell'albero delle transazioni.

Commenti

Il metodo Clone crea un nuovo oggetto di flusso per accedere allo stesso byte, ma usando un puntatore di ricerca separato. Il nuovo oggetto di flusso visualizza gli stessi dati dell'oggetto di flusso di origine. Le modifiche scritte in un oggetto sono immediatamente visibili nell'altro. Il blocco dell'intervallo è condiviso tra gli oggetti di flusso.

L'impostazione iniziale del puntatore di ricerca nell'istanza del flusso clonato corrisponde all'impostazione corrente del puntatore di ricerca nel flusso originale al momento dell'operazione di clonazione.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione objidl.h
Libreria Uuid.lib
DLL Ole32.dll

Vedi anche

IStream - Implementazione di file composti

IStream::CopyTo