Oggetto Provider

[A partire da Windows 8 e Windows Server 2012, l'interfaccia COM del servizio disco virtuale viene sostituita dall'API gestione archiviazione di Windows.]

Il provider object modella il programma responsabile della gestione dell'archiviazione. Questo oggetto consente l'accesso sia al provider software che alla funzionalità del provider hardware. I programmi provider eseguono operazioni su dispositivi software (volumi e dischi) e dispositivi hardware (sottosistemi di archiviazione e matrici di unità dietro i controller RAID).

VDS registra un oggetto provider come oggetto COM nel Registro di sistema di Windows e usa interfacce contenute (non aggregazione) per implementare gli oggetti rimanenti, eseguire il wrapping di tutte le interfacce e metodi e aggiungere in modo condizionale funzionalità. Gli oggetti e le interfacce di cui è stato eseguito il wrapping dall'oggetto provider variano a seconda del tipo di provider.

Non è possibile creare un'istanza di un oggetto provider direttamente dall'applicazione. È invece necessario avviare VDS, ottenere un puntatore a un oggetto servizio e usare l'oggetto servizio per eseguire una query per i provider noti all'host. Per istruzioni sul caricamento di VDS, vedere Avvio e oggetti servizio.

Usare il metodo IVdsService::QueryProviders per enumerare i programmi del provider registrati in un host. Il primo parametro del metodo consente di specificare solo provider software, solo provider hardware o entrambi. Con un oggetto provider, è possibile eseguire operazioni sugli oggetti gestiti da tale provider. Come illustrato nella figura seguente, è possibile usare i metodi esposti dall'interfaccia IVdsSwProvider per creare ed eseguire query sugli oggetti pack associati ai provider software. Analogamente, è possibile usare i metodi nell'interfaccia IVdsHwProvider per interagire con gli oggetti sottosistema associati ai provider hardware.

Diagramma che mostra una diramazione

Le proprietà dell'oggetto includono un identificatore di oggetto GUID permanente che rappresenta un provider specifico e un secondo GUID che rappresenta la versione del provider. Si noti che altri identificatori di oggetto nel modello a oggetti VDS non sono persistenti. Le proprietà rimanenti per questo oggetto includono un nome del provider, informazioni aggiuntive sulla versione, software del tipo di provider o hardware, vari flag e un'impostazione di priorità di ricompilazione che si applica solo ai provider di software.

Nella tabella seguente sono elencate le interfacce, le enumerazioni e le strutture correlate

Tipo Elemento
Interfacce sempre esposte da questo oggetto IVdsProvider
Interfacce sempre esposte solo dai provider software IVdsSwProvider
Interfacce sempre esposte solo dai provider hardware IVdsHwProvider
Interfacce che possono essere esposte da questo oggetto IVdsProviderSupport
Interfacce che possono essere esposte solo dai provider hardware IVdsHwProviderType, IVdsHwProviderStoragePoolsWindows Server 2008, Windows Vista e Windows Server 2003: l'interfaccia IVdsHwProviderStoragePools non è supportata.
Interfacce sempre implementate ma non esposte alle applicazioni IVdsProviderPrivate
Interfacce sempre implementate dai provider hardware, ma non esposte alle applicazioni IVdsHwProviderPrivate
Interfacce che possono essere implementate dai provider hardware, ma non esposte alle applicazioni IVdsHwProviderPrivateMpio
Enumerazioni associate VDS_PROVIDER_FLAG, VDS_QUERY_PROVIDER_FLAG e VDS_PROVIDER_TYPE.
Strutture associate Nessuno.

Modello a oggetti VDS

Oggetti di avvio e servizio

IVdsService::QueryProviders

IVdsSwProvider

IVdsHwProvider