Share via


Metodo IVdsLun::QueryActiveControllers (vdshwprv.h)

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

Restituisce un'enumerazione dei controller attualmente attivi, ovvero i controller tramite cui il LUN è accessibile.

Sintassi

HRESULT QueryActiveControllers(
  [out] IEnumVdsObject **ppEnum
);

Parametri

[out] ppEnum

Indirizzo di un puntatore all'interfaccia IEnumVdsObject che può essere usato per enumerare i controller nel sottosistema come oggetti controller. Per altre informazioni, vedere Utilizzo degli oggetti di enumerazione. I chiamanti devono rilasciare l'interfaccia e ognuno degli oggetti controller quando non sono più necessari chiamando il metodo IUnknown::Release .

Valore restituito

Questo metodo può restituire valori HRESULT standard, ad esempio E_INVALIDARG o E_OUTOFMEMORY e valori restituiti specifici di VDS. Può anche restituire codici di errore di sistema convertiti usando la macro HRESULT_FROM_WIN32 . Gli errori possono provenire dal VDS stesso o dal provider VDS sottostante in uso. I valori restituiti possibili includono quanto segue.

Codice/valore restituito Descrizione
S_OK
Restituisce l'enumerazione dei controller attivi. Se il LUN non dispone di controller attivi, l'enumerazione è vuota.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Questo valore restituito segnala un problema di comunicazione o software all'interno di un provider che memorizza nella cache le informazioni sulla matrice. Usare il metodo IVdsHwProvider::Reenumerate seguito dal metodo IVdsHwProvider::Refresh per ripristinare la cache.
VDS_E_OBJECT_DELETED
0x8004240BL
L'oggetto LUN non è più presente.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Il LUN si trova in uno stato di errore e non è in grado di eseguire l'operazione richiesta.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Un'altra operazione è in corso; questa operazione non può continuare fino al completamento dell'operazione o delle operazioni precedenti.

Commenti

Utilizzare il metodo IVdsLun::AssociateControllers per impostare il controller. Usare il metodo IVdsController::QueryAssociatedLuns per eseguire una query sui LUN associati a un determinato controller.

La maggior parte dei sottosistemi offre un solo controller attivo per un LUN, lasciando gli altri controller in modalità standby. Tuttavia, alcuni produttori di sottosistemi consentono più controller attivi contemporaneamente.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vdshwprv.h
Libreria Uuid.lib

Vedi anche

IEnumVdsObject

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun

IVdsLun::AssociateControllers