Condividi tramite


Metodo IVdsSubSystem::QueryMaxLunCreateSize (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 le dimensioni del LUN massimo che è possibile creare usando il tipo e gli hint LUN specificati.

Sintassi

HRESULT QueryMaxLunCreateSize(
  [in]  VDS_LUN_TYPE  type,
  [in]  VDS_OBJECT_ID *pDriveIdArray,
  [in]  LONG          lNumberOfDrives,
  [in]  VDS_HINTS     *pHints,
  [out] ULONGLONG     *pullMaxLunSize
);

Parametri

[in] type

Tipo LUN enumerato da VDS_LUN_TYPE.

[in] pDriveIdArray

Puntatore a una matrice contenente un VDS_OBJECT_ID per ognuna delle unità da usare nella creazione LUN. Il provider deve tentare di usare le unità nell'ordine specificato. Questo parametro può essere NULL se il parametro lNumberOfDrives è 0, nel qual caso il provider deve selezionare automaticamente le unità.

[in] lNumberOfDrives

Numero di voci in pDriveIdArray. Questa opzione può essere impostata su 0.

[in] pHints

Puntatore alla struttura VDS_HINTS utilizzata per la creazione del LUN. Gli hint accettano sempre priorità inferiore rispetto ai parametri elencati prima. Questo argomento deve essere diverso da NULL.

[out] pullMaxLunSize

Puntatore a un buffer contenente le dimensioni massime del LUN in byte. Questo argomento deve essere diverso da NULL.

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 derivare da VDS stesso o dal provider VDS sottostante usato. I valori restituiti possibili includono quanto segue.

Codice/valore restituito Descrizione
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 sottosistema non è più presente.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Il sottosistema si trova in uno stato non riuscito 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.
VDS_E_OBJECT_NOT_FOUND
0x80042405L
Può essere restituito da qualsiasi metodo che accetta una costante VDS_OBJECT_ID . Questo valore restituito indica che l'identificatore non fa riferimento a un oggetto esistente.
VDS_E_NOT_SUPPORTED
0x80042400L
Questa operazione o combinazione di parametri non è supportata da questo provider.

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

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsSubSystem

VDS_HINTS

VDS_LUN_TYPE