Share via


Objeto Provider

[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.]

O objeto do provedor modela o programa responsável pelo gerenciamento de armazenamento. Esse objeto fornece acesso ao provedor de software e à funcionalidade do provedor de hardware. Os programas de provedor executam operações em dispositivos de software (volumes e discos) e dispositivos de hardware (subsistemas de armazenamento e matrizes de unidades atrás de controladores RAID).

O VDS registra um objeto de provedor como um objeto COM no Registro do Windows e usa interfaces contidas (não agregação) para implementar os objetos restantes, encapsulando todas as interfaces e métodos e adicionando condicionalmente a funcionalidade. Os objetos e interfaces encapsulados pelo objeto do provedor diferem dependendo do tipo de provedor.

Não é possível instanciar um objeto de provedor diretamente do seu aplicativo. Em vez disso, você deve iniciar o VDS, obter um ponteiro para um objeto de serviço e usar o objeto de serviço para consultar os provedores conhecidos pelo host. Para obter instruções sobre como carregar o VDS, consulte Objetos de inicialização e de serviço.

Use o método IVdsService::QueryProviders para enumerar os programas de provedor registrados em um host. O primeiro parâmetro do método permite que você especifique apenas provedores de software, somente provedores de hardware ou ambos. Com um objeto de provedor, você pode executar operações nos objetos gerenciados por esse provedor. Como mostra a ilustração a seguir, você pode usar os métodos expostos pela interface IVdsSwProvider para criar e consultar objetos de pacote associados a provedores de software. Da mesma forma, você pode usar os métodos na interface IVdsHwProvider para interagir com os objetos do subsistema associados a provedores de hardware.

Diagrama que mostra um 'Aplicativo' ramificando em 'Provedores', depois 'Pacote' ou 'Subsistema' e, em seguida, 'Spindles'.

As propriedades do objeto incluem um identificador de objeto GUID persistente que representa um provedor específico e um segundo GUID que representa a versão do provedor. Observe que outros identificadores de objeto no modelo de objeto do VDS não são persistentes. As propriedades restantes para esse objeto incluem um nome de provedor, informações de versão adicionais, o software ou hardware do tipo de provedor), vários sinalizadores e uma configuração de prioridade de recompilação que se aplica somente a provedores de software.

A tabela a seguir lista interfaces, enumerações e estruturas relacionadas

Type Elemento
Interfaces que são sempre expostas por este objeto IVdsProvider
Interfaces que são sempre expostas apenas por provedores de software IVdsSwProvider
Interfaces que são sempre expostas apenas por provedores de hardware IVdsHwProvider
Interfaces que podem ser expostas por este objeto IVdsProviderSupport
Interfaces que podem ser expostas apenas por provedores de hardware IVdsHwProviderType, IVdsHwProviderStoragePoolsWindows Server 2008, Windows Vista e Windows Server 2003: não há suporte para a interface IVdsHwProviderStoragePools .
Interfaces que são sempre implementadas, mas não expostas a aplicativos IVdsProviderPrivate
Interfaces que são sempre implementadas por provedores de hardware, mas não expostas a aplicativos IVdsHwProviderPrivate
Interfaces que podem ser implementadas por provedores de hardware, mas não expostas a aplicativos IVdsHwProviderPrivateMpio
Enumerações associadas VDS_PROVIDER_FLAG, VDS_QUERY_PROVIDER_FLAG e VDS_PROVIDER_TYPE.
Estruturas associadas Nenhum.

Modelo de objeto VDS

Objetos de inicialização e serviço

IVdsService::QueryProviders

IVdsSwProvider

IVdsHwProvider