Condividi tramite


Metodo IVdsService::QueryUnallocatedDisks (vds.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 oggetto di enumerazione contenente un elenco dei dischi non allocati gestiti da VDS.

Sintassi

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

Parametri

[out] ppEnum

Indirizzo di un puntatore all'interfaccia IEnumVdsObject che può essere usato per enumerare i dischi come oggetti disco. Per altre informazioni, vedere Utilizzo degli oggetti di enumerazione. I chiamanti devono rilasciare l'interfaccia e ognuno degli oggetti disco 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
L'enumerazione è stata restituita correttamente.
VDS_E_INITIALIZED_FAILED
0x80042401L
Impossibile inizializzare VDS. Se un'applicazione chiama questo metodo prima che il servizio completi l'inizializzazione, il metodo viene bloccato fino al completamento dell'inizializzazione. Se l'inizializzazione ha esito negativo, viene restituito questo errore.

Commenti

Un disco non allocato non è richiesto da alcun provider. Può contenere o meno informazioni sul formato di partizione MBR o GPT. Spesso si tratta di un disco non inizializzato. Se lo stato del disco è VDS_DS_ONLINE o VDS_DS_OFFLINE, il disco non viene allocato e non inizializzato. Se è VDS_DS_UNKNOWN, VDS_DS_NOT_READY, VDS_DS_FAILED o VDS_DS_MISSING, non è allocato, ma il servizio VDS non è in grado di determinare se è inizializzato o meno, probabilmente a causa di problemi con il disco.

Per determinare lo stato del disco, vedere il membro di stato della struttura VDS_DISK_PROP o VDS_DISK_PROP2 per il disco.

Se lo stato del disco è VDS_DS_ONLINE, è possibile aggiungere il disco a un pacchetto.

Se lo stato del disco è VDS_DS_OFFLINE, provare a portare online il disco chiamando IVdsDiskOnline::Online. Se la chiamata al metodo Online ha esito positivo, il disco può essere aggiunto a un pacchetto. Se la chiamata a Online non riesce, non è possibile usare il disco.

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 vds.h
Libreria Uuid.lib

Vedi anche

IEnumVdsObject

IVdsService