IVdsSubSystem ::SetControllerStatus, méthode (vds.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.]
Définit la status (en ligne ou hors connexion) des contrôleurs dans le sous-système.
Syntaxe
HRESULT SetControllerStatus(
[in] VDS_OBJECT_ID *pOnlineControllerIdArray,
[in] LONG lNumberOfOnlineControllers,
[in] VDS_OBJECT_ID *pOfflineControllerIdArray,
[in] LONG lNumberOfOfflineControllers
);
Paramètres
[in] pOnlineControllerIdArray
Pointeur vers un tableau de GUID de contrôleur. Le fournisseur définit ces contrôleurs sur en ligne. Ce tableau inclut des contrôleurs déjà définis sur en ligne qui doivent le rester.
[in] lNumberOfOnlineControllers
Nombre de contrôleurs spécifiés dans pOnlineControllersArray.
[in] pOfflineControllerIdArray
Pointeur vers un tableau de GUID de contrôleur. Le fournisseur définit ces contrôleurs sur hors connexion. Ce tableau inclut des contrôleurs déjà définis sur hors connexion qui doivent le rester.
[in] lNumberOfOfflineControllers
Nombre de contrôleurs spécifiés dans pOfflineControllersArray.
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 |
---|---|
|
Cette valeur de retour signale 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. |
|
L’objet de sous-système n’est plus présent. |
|
Le sous-système est dans un état d’échec et ne peut pas effectuer l’opération demandée. |
|
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. |
|
Peut être retourné à partir de n’importe quelle méthode qui prend une constante VDS_OBJECT_ID . Cette valeur de retour indique que l’identificateur ne fait pas référence à un objet existant. |
Remarques
Cette méthode permet à un appelant de définir le status de tous les contrôleurs à la fois. Utilisez la méthode IVdsController ::SetStatus pour définir la status d’un contrôleur unique.
Les appelants doivent passer l’ensemble complet des contrôleurs dans le paramètre pOnlineControllerIdArray ou pOfflineControllerIdArray pour chaque appel de méthode. La valeur de retour E_INVALIDARG peut indiquer que tous les contrôleurs du sous-système n’ont pas été spécifiés dans les arguments de cette méthode.
La méthode SetControllerStatus nécessite que tous les contrôleurs du sous-système soient présents dans l’un des deux tableaux fournis.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | vds.h |
Bibliothèque | Uuid.lib |