Compartilhar via


Método IVdsOpenVDisk::Merge (vds.h)

[Começando com Windows 8 e Windows Server 2012, a interface COM do Serviço de Disco Virtual é substituída pela API de Gerenciamento de Armazenamento do Windows.]

Mescla um disco virtual filho com seus pais na cadeia de diferenciação.

Sintaxe

HRESULT Merge(
  [in]  MERGE_VIRTUAL_DISK_FLAG Flags,
  [in]  ULONG                   MergeDepth,
  [out] IVdsAsync               **ppAsync
);

Parâmetros

[in] Flags

Um MERGE_VIRTUAL_DISK_FLAG valor de enumeração que especifica como o disco virtual deve ser mesclado. Deve ser definido como MERGE_VIRTUAL_DISK_FLAG_NONE.

[in] MergeDepth

O número de discos pai na cadeia de diferenciação a serem mesclados. O disco deve ter sido aberto com um ReadWriteDepth pelo menos igual a esse valor.

[out] ppAsync

Um ponteiro para uma interface IVdsAsync que, após a conclusão bem-sucedida, recebe a interface IVdsAsync para monitorar e controlar essa operação. Os chamadores devem liberar a interface recebida quando tiverem terminado com ela. Se o método IVdsAsync::Wait for chamado na interface e um valor HRESULT bem-sucedido for retornado, as interfaces retornadas na estrutura VDS_ASYNC_OUTPUT deverão ser liberadas chamando o método IUnknown::Release em cada ponteiro de interface. No entanto, se Wait retornar um valor HRESULT de falha ou se o parâmetro pHrResult de Wait receber um valor HRESULT de falha, os ponteiros de interface na estrutura VDS_ASYNC_OUTPUT serão NULL e não precisarão ser liberados. Você pode testar valores HRESULT com êxito ou falha usando as macros SUCCEEDED e FAILED definidas em Winerror.h.

Retornar valor

Esse método pode retornar valores HRESULT padrão, como E_INVALIDARG ou E_OUTOFMEMORY, e valores retornados específicos do VDS. Ele também pode retornar códigos de erro do sistema convertidos usando a macro HRESULT_FROM_WIN32 . Os erros podem se originar do próprio VDS ou do provedor de VDS subjacente que está sendo usado. Os possíveis valores retornados incluem o seguinte.

Código de retorno Descrição
S_OK
O método foi concluído com sucesso.

Comentários

Um disco virtual só poderá ser mesclado se for desanexado.

Esse método move todos os blocos de dados do disco filho para o pai. No entanto, ele não excluirá os discos filho invalidados no final da operação.

O disco virtual deve ter sido aberto com acesso de leitura/gravação.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho vds.h
Biblioteca Uuid.lib

Confira também

IVdsOpenVDisk