Partager via


Méthode IVssHardwareSnapshotProvider ::AreLunsSupported (vsprov.h)

La méthode AreLunsSupported détermine si le fournisseur de matériel prend en charge la création de cliché instantané pour tous les LUN qui contribuent au volume. VSS appelle la méthode AreLunsSupported pour chaque volume ajouté au jeu de cliché instantané. Avant d’appeler cette méthode, VSS détermine les LUN qui contribuent au volume.

Pour un volume spécifique, chaque LUN ne peut contribuer qu’une seule fois. Une LUN spécifique peut contribuer à plusieurs volumes.

Note Les fournisseurs de matériel sont uniquement pris en charge sur les systèmes d’exploitation Windows Server.
 

Syntaxe

HRESULT AreLunsSupported(
  [in]      LONG                lLunCount,
  [in]      LONG                lContext,
  [in]      VSS_PWSZ            *rgwszDevices,
  [in, out] VDS_LUN_INFORMATION *pLunInformation,
  [out]     BOOL                *pbIsSupported
);

Paramètres

[in] lLunCount

Nombre de LUN contribuant à ce volume de cliché instantané.

[in] lContext

Contexte de cliché instantané pour le jeu de clichés instantanés actuel, tel qu’énuméré par un masque de bits d’indicateurs de l’énumération _VSS_VOLUME_SNAPSHOT_ATTRIBUTES . Si l’indicateur VSS_VOLSNAP_ATTR_TRANSPORTABLE est défini, le jeu de clichés instantanés est transportable.

[in] rgwszDevices

Liste des appareils correspondant aux LUN à copier en mode instantané.

[in, out] pLunInformation

Tableau de structures lLunCountVDS_LUN_INFORMATION , une pour chaque LUN contribuant à ce volume de cliché instantané.

[out] pbIsSupported

Pointeur vers une valeur BOOL . Si tous les appareils sont pris en charge pour le cliché instantané, le fournisseur doit stocker une valeur TRUE à l’emplacement pointé par pbIsSupported.

Valeur retournée

Cette méthode peut retourner l’une de ces valeurs.

Code/valeur de retour Description
S_OK
0x000000000L
L’opération s’est terminée avec succès.
E_OUTOFMEMORY
0x8007000EL
Mémoire insuffisante ou autres ressources système.
E_INVALIDARG
0x80070057L
L’une des valeurs de paramètre n’est pas valide.
VSS_E_PROVIDER_VETO
0x80042306L
Une erreur de fournisseur inattendue s’est produite. Le fournisseur doit signaler un événement dans le journal des événements de l’application, fournissant à l’utilisateur des informations sur la façon de résoudre le problème.

Remarques

Si le sous-système matériel prend en charge les instructions de la page 80 (numéro de série de l’appareil) et de la page 83 (identité de l’appareil), le fournisseur ne doit pas avoir besoin de modifier les structures du tableau pLunInformation .

Dans tous les cas, la méthode AreLunsSupported ne doit pas modifier la valeur du m_rgInterconnects membre d’une structure VDS_LUN_INFORMATION dans le tableau pLunInformation .

Si le fournisseur prend en charge la création de cliché instantané matériel pour tous les lun du tableau pLunInformation , il doit retourner TRUE dans la valeur BOOL vers laquelle pointe le paramètre pbIsSupported . Si le fournisseur ne prend pas en charge les clichés instantanés matériels pour un ou plusieurs LUN, il doit définir cette valeur BOOL sur FALSE.

Le fournisseur ne doit jamais accepter de créer des clichés instantanés s’il ne le peut pas, même si le problème est uniquement temporaire. Si une condition temporaire, telle qu’une faible quantité de ressources, empêche le fournisseur de créer un cliché instantané à l’aide d’une ou de plusieurs LUN lorsque AreLunsSupported est appelé, le fournisseur doit définir la valeur BOOL sur FALSE.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête vsprov.h

Voir aussi

IVssHardwareSnapshotProvider

VDS_LUN_INFORMATION

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES