Share via


Méthode IVdsController ::SetStatus (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.]

Définit la status d’un contrôleur sur la valeur spécifiée.

Syntaxe

HRESULT SetStatus(
  [in] VDS_CONTROLLER_STATUS status
);

Paramètres

[in] status

Valeurs énumérées par VDS_CONTROLLER_STATUS. Les appelants peuvent transmettre un sous-ensemble des valeurs d’énumération possibles. La transmission de VDS_CS_UNKNOWN retourne E_INVALIDARG.

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
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.
VDS_E_OBJECT_DELETED
0x8004240BL
L’objet contrôleur n’est plus présent.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Le contrôleur est dans un état d’échec et n’est pas en mesure d’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 se poursuivre tant que la ou les opérations précédentes ne sont pas terminées.
VDS_E_NOT_SUPPORTED
0x80042400L
Cette opération ou cette combinaison de paramètres n’est pas prise en charge par ce fournisseur.

Remarques

Cette méthode vous permet de définir la status d’un contrôleur unique. Vous pouvez définir le status de tous les contrôleurs d’un sous-système en même temps en appelant la méthode IVdsSubSystem ::SetControllerStatus. Utilisez la méthode IVdsController ::GetProperties pour obtenir la status actuelle du contrôleur.

Les implémenteurs sont chargés d’effectuer toutes les opérations nécessaires pour obtenir le status à l’état spécifié. Par exemple, si l’appelant passe VDS_CS_OFFLINE en tant que contrôleur status, vous devrez peut-être d’abord effacer le cache du contrôleur.

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 vdshwprv.h
Bibliothèque Uuid.lib

Voir aussi

IVdsController

IVdsController ::GetProperties

IVdsHwProvider ::Réenumerate

IVdsHwProvider ::Refresh

IVdsSubSystem ::SetControllerStatus

VDS_CONTROLLER_STATUS