Compartilhar via


Método IVdsLun::D elete (vdshwprv.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.]

Exclui o LUN e todos os seus plexes. Todos os dados no LUN são perdidos. O VDS libera as extensões alocadas para o LUN.

Sintaxe

HRESULT Delete();

Retornar valor

Esse método pode retornar valores HRESULT padrão, como 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.

Retornar código/valor Descrição
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Esse valor retornado sinaliza um problema de software ou comunicação dentro de um provedor que armazena em cache informações sobre a matriz. Use o método IVdsHwProvider::Reenumerate seguido pelo método IVdsHwProvider::Refresh para restaurar o cache.
VDS_E_OBJECT_DELETED
0x8004240BL
O objeto LUN não está mais presente.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
O LUN está em um estado de falha e não consegue executar a operação solicitada.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Outra operação está em andamento; essa operação não pode continuar até que a operação ou as operações anteriores sejam concluídas.

Comentários

Se um aplicativo tiver uma referência à interface IVdsLun e chamar IVdsLun::D elete, os implementadores deverão retornar VDS_E_OBJECT_DELETED em chamadas subsequentes para métodos como GetProperties nessa interface. Nesse caso, a interface tem uma referência pendente e é válida, mas o objeto subjacente não existe mais.

Se um LUN que for desmascarado em um computador de destino for excluído, a visibilidade do LUN nesse computador poderá não ser alterada até que um rescan seja executado. O aplicativo VDS no computador de destino inicia o repositório de barramento chamando IVdsService::Reenumerate. O início do rescan do barramento é responsabilidade do aplicativo VDS, não do provedor de hardware.

Se um método como IVdsLun::D elete for chamado em um thread enquanto IVdsSubSystem::QueryLuns for chamado em outro thread que está sendo executado simultaneamente, o resultado poderá ser uma violação de acesso do provedor. O provedor de hardware é responsável por serializar esses métodos conforme necessário para minimizar esses problemas de sincronização.

O provedor de hardware é responsável por remover as informações de partição do LUN para que o LUN possa ser reutilizado. Se o LUN for um disco MBR, isso será feito gravando zeros no primeiro e no último 1 MB do disco. Para um disco GPT, zeros devem ser gravados no primeiro e últimos 16 KB do disco.

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho vdshwprv.h
Biblioteca Uuid.lib

Confira também

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun

IVdsLun::GetProperties