Método IStream::Clone (objidl.h)
O método Clone cria um novo objeto de fluxo com seu próprio ponteiro de busca que faz referência aos mesmos bytes do fluxo original.
Sintaxe
HRESULT Clone(
[out] IStream **ppstm
);
Parâmetros
[out] ppstm
Quando bem-sucedido, ponteiro para o local de um ponteiro IStream para o novo objeto de fluxo. Se ocorrer um erro, esse parâmetro será NULL.
Retornar valor
Esse método pode retornar um desses valores.
Código de retorno | Descrição |
---|---|
S_OK | O fluxo foi clonado com êxito. |
E_PENDING | Somente armazenamento assíncrono: parte ou todos os dados do fluxo estão indisponíveis no momento. |
STG_E_INSUFFICIENTMEMORY | O fluxo não foi clonado devido à falta de memória. |
STG_E_INVALIDPOINTER | O ponteiro ppStm não é válido. |
STG_E_REVERTED | O objeto foi invalidado por uma operação de reverter acima dele na árvore de transações. |
Comentários
O método Clone cria um novo objeto de fluxo para acessar os mesmos bytes, mas usando um ponteiro de busca separado. O novo objeto de fluxo vê os mesmos dados que o objeto source-stream. As alterações gravadas em um objeto são imediatamente visíveis na outra. O bloqueio de intervalo é compartilhado entre os objetos de fluxo.
A configuração inicial do ponteiro seek na instância de fluxo clonada é a mesma da configuração atual do ponteiro seek no fluxo original no momento da operação de clone.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | objidl.h |
Biblioteca | Uuid.lib |
DLL | Ole32.dll |