Condividi tramite


Metodo IVdsSubSystem2::QueryMaxLunCreateSize2 (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 le dimensioni del LUN massimo che è possibile creare usando il tipo e gli hint LUN specificati. Questo metodo è identico al metodo IVdsSubSystem::QueryMaxLunCreateSize , ad eccezione del fatto che gli hint automagic vengono forniti usando una struttura VDS_HINTS2 anziché una struttura VDS_HINTS .

Sintassi

HRESULT QueryMaxLunCreateSize2(
  [in]  VDS_LUN_TYPE  type,
  [in]  VDS_OBJECT_ID *pDriveIdArray,
  [in]  LONG          lNumberOfDrives,
  [in]  VDS_HINTS2    *pHints2,
  [out] ULONGLONG     *pullMaxLunSize
);

Parametri

[in] type

Valore di enumerazione VDS_LUN_TYPE che specifica il tipo LUN.

[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 è zero, nel qual caso il provider deve selezionare automaticamente le unità.

[in] lNumberOfDrives

Numero di voci nella matrice pDriveIdArray . Questo parametro è facoltativo e può essere zero.

[in] pHints2

Puntatore alla struttura VDS_HINTS2 utilizzata per la creazione del LUN. I suggerimenti accettano sempre priorità inferiore rispetto ai parametri elencati in precedenza. Questo parametro è obbligatorio e non può essere NULL.

[out] pullMaxLunSize

Puntatore a un buffer contenente le dimensioni massime del LUN in byte. Questo parametro è obbligatorio e non può essere 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 provenire dal VDS stesso o dal provider VDS sottostante in uso. I valori restituiti possibili includono quanto segue.

Codice/valore restituito Descrizione
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Esiste 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 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.
VDS_E_OBJECT_NOT_FOUND
0x80042405L
L'identificatore non fa riferimento a un oggetto esistente. Questo valore può essere restituito da qualsiasi metodo che accetta una costante VDS_OBJECT_ID .
VDS_E_NOT_SUPPORTED
0x80042400L
Questa operazione o combinazione di parametri non è supportata da questo provider.

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vds.h
Libreria Uuid.lib

Vedi anche

IVdsSubSystem2

VDS_HINTS2