Partager via


Méthode IVdsSubSystemIscsi ::CreateTarget (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.]

Crée une cible iSCSI. Le pointeur d’interface pour le nouvel objet cible peut être récupéré en appelant IVdsAsync ::Wait via le paramètre ppAsync . La structure VDS_ASYNC_OUTPUT retournée contient le pointeur d’interface d’objet cible dans le membre ct.pTargetUnk .

Syntaxe

HRESULT CreateTarget(
  [in]  LPWSTR    pwszIscsiName,
  [in]  LPWSTR    pwszFriendlyName,
  [out] IVdsAsync **ppAsync
);

Paramètres

[in] pwszIscsiName

Chaîne spécifiant le nom iSCSI à affecter à la cible. Le nom de la cible doit être unique pour toutes les cibles de tous les sous-systèmes visibles sur le réseau.

Si pwszIscsiName a la valeur NULL ou pointe vers une chaîne vide, le fournisseur génère le nom iSCSI à affecter à la cible.

[in] pwszFriendlyName

Chaîne spécifiant le nom convivial à attribuer à la cible. Cela correspond à l’alias iSCSI.

[out] ppAsync

Adresse d’un pointeur d’interface IVdsAsync , que VDS initialise au retour. Les appelants doivent libérer l’interface. Utilisez cette interface pour annuler, attendre ou interroger le status de l’opération. Si vous appelez IVdsAsync ::Wait sur cette méthode et qu’une valeur HRESULT de réussite est retournée, vous devez libérer les interfaces retournées dans la structure VDS_ASYNC_OUTPUT en appelant la méthode IUnknown ::Release sur chaque pointeur d’interface. Toutefois, si Wait retourne une valeur HRESULT d’échec ou si le paramètre pHrResult de Wait reçoit une valeur HRESULT d’échec, les pointeurs d’interface dans la structure VDS_ASYNC_OUTPUT sont NULL et n’ont pas besoin d’être libérés. Vous pouvez tester la réussite ou l’échec des valeurs HRESULT à l’aide des macros SUCCEEDED et FAILED définies dans Winerror.h.

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
S_OK
La cible a été créée avec succès.
VDS_E_NOT_SUPPORTED
0x80042400L
L’objet sous-système ne prend pas en charge cette méthode. Cela indique que le fournisseur de matériel a défini l’indicateur VDS_SF_SUPPORTS_SIMPLE_TARGET_CONFIG dans le membre ulFlags de la structure VDS_SUB_SYSTEM_PROP pour l’objet sous-système.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Le cache du fournisseur est endommagé. Cela indique un problème logiciel ou de communication à l’intérieur d’un fournisseur qui met en cache des informations sur les appareils attachés. L’appelant peut utiliser 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 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 les opérations précédentes ne sont pas terminées.
VDS_E_NAME_NOT_UNIQUE
0x80042701L
Un nom non unique a été spécifié dans le paramètre pwszIscsiName .

Configuration requise

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

Voir aussi

IVdsAsync

IVdsLunIscsi ::AssociateTargets

IVdsSubSystem ::GetProperties

IVdsSubSystemIscsi

VDS_ASYNC_OUTPUT

VDS_SUB_SYSTEM_FLAG

VDS_SUB_SYSTEM_PROP