Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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 |