Partager via


Méthode IVdsSubSystem2 ::QueryMaxLunCreateSize2 (vdshwprv.h)

[À compter de Windows 8 et Windows Server 2012, l’interface COM du service de disque virtuel est remplacée par l’API gestion du stockage Windows.]

Retourne la taille du numéro d’unité logique maximal qui peut être créé à l’aide du type et des indicateurs de LUN spécifiés. Cette méthode est identique à la méthode IVdsSubSystem ::QueryMaxLunCreateSize , sauf que les indicateurs automagiques sont fournis à l’aide d’une structure VDS_HINTS2 au lieu d’une structure VDS_HINTS .

Syntaxe

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

Paramètres

[in] type

Valeur d’énumération VDS_LUN_TYPE qui spécifie le type de lun.

[in] pDriveIdArray

Pointeur vers un tableau contenant un VDS_OBJECT_ID pour chacun des lecteurs à utiliser dans la création du numéro d’unité logique. Le fournisseur doit tenter d’utiliser les lecteurs dans l’ordre fourni. Ce paramètre peut être NULL si le paramètre lNumberOfDrives est égal à zéro, auquel cas le fournisseur doit sélectionner automatiquement les lecteurs.

[in] lNumberOfDrives

Nombre d’entrées dans le tableau pDriveIdArray . Ce paramètre est facultatif et peut être égal à zéro.

[in] pHints2

Pointeur vers la structure VDS_HINTS2 utilisée pour créer le numéro d’unité logique. Les indicateurs ont toujours une priorité inférieure aux paramètres répertoriés précédemment. Ce paramètre est obligatoire et ne peut pas être NULL.

[out] pullMaxLunSize

Pointeur vers une mémoire tampon contenant la taille maximale du LUN en octets. Ce paramètre est obligatoire et ne peut pas être NULL.

Valeur retournée

Cette méthode peut retourner des valeurs HRESULT standard, telles que E_INVALIDARG ou E_OUTOFMEMORY, et des valeurs de retour spécifiques à VDS. Il peut également retourner des codes d’erreur système convertis à l’aide de la macro HRESULT_FROM_WIN32 . Les erreurs peuvent provenir de VDS lui-même ou du fournisseur VDS sous-jacent utilisé. Les valeurs de retour possibles sont les suivantes.

Code/valeur de retour Description
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Il existe un problème logiciel ou de communication à l’intérieur d’un fournisseur qui met en cache des informations sur le tableau. Utilisez la méthode IVdsHwProvider ::Reenumerate suivie de la méthode IVdsHwProvider ::Refresh pour restaurer le cache.
VDS_E_OBJECT_DELETED
0x8004240BL
L’objet de sous-système n’est plus présent.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Le sous-système est dans un état d’échec et ne peut pas effectuer l’opération demandée.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Une autre opération est en cours ; cette opération ne peut pas continuer tant que l’opération ou les opérations précédentes ne sont pas terminées.
VDS_E_OBJECT_NOT_FOUND
0x80042405L
L’identificateur ne fait pas référence à un objet existant. Cette valeur peut être retournée à partir de n’importe quelle méthode qui prend une constante VDS_OBJECT_ID .
VDS_E_NOT_SUPPORTED
0x80042400L
Cette opération ou cette combinaison de paramètres n’est pas prise en charge par ce fournisseur.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête vdshwprv.h
Bibliothèque Uuid.lib

Voir aussi

IVdsSubSystem2

VDS_HINTS2