Condividi tramite


Metodo IVdsSubSystemIscsi::CreateTarget (vdshwprv.h)

[A partire da Windows 8 e Windows Server 2012, l'interfaccia COM del servizio disco virtuale viene sostituita dall'API gestione archiviazione di Windows.

Crea una destinazione iSCSI. Il puntatore dell'interfaccia per il nuovo oggetto di destinazione può essere recuperato chiamando IVdsAsync::Wait tramite il parametro ppAsync . La struttura VDS_ASYNC_OUTPUT restituita contiene il puntatore dell'interfaccia dell'oggetto di destinazione nel membro ct.pTargetUnk .

Sintassi

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

Parametri

[in] pwszIscsiName

Stringa che specifica il nome iSCSI da assegnare alla destinazione. Il nome di destinazione deve essere univoco in tutte le destinazioni in tutti i sottosistemi visibili nella rete.

Se pwszIscsiName è NULL o punta a una stringa vuota, il provider genererà il nome iSCSI da assegnare alla destinazione.

[in] pwszFriendlyName

Stringa che specifica il nome descrittivo da assegnare alla destinazione. Corrisponde all'alias iSCSI.

[out] ppAsync

Indirizzo di un puntatore dell'interfaccia IVdsAsync , che il VDS inizializza sul ritorno. I chiamanti devono rilasciare l'interfaccia. Usare questa interfaccia per annullare, attendere o eseguire query sullo stato dell'operazione. Se si chiama IVdsAsync::Wait su questo metodo e viene restituito un valore HRESULT riuscito, è necessario rilasciare le interfacce restituite nella struttura VDS_ASYNC_OUTPUT chiamando il metodo IUnknown::Release su ogni puntatore dell'interfaccia. Tuttavia, se Wait restituisce un valore HRESULT non riuscito o se il parametro pHrResultdiWait riceve un valore HRESULT non riuscito, i puntatori di interfaccia nella struttura VDS_ASYNC_OUTPUT sono NULL e non devono essere rilasciati. È possibile testare i valori HRESULT di esito positivo o negativo usando le macro SUCCESSED e FAILED definite in Winerror.h.

Valore restituito

Questo metodo può restituire valori HRESULT standard, ad esempio E_INVALIDARG o E_OUTOFMEMORY e valori restituiti specifici di VDS. Può anche restituire codici di errore di sistema convertiti usando la macro HRESULT_FROM_WIN32 . Gli errori possono derivare da VDS stesso o dal provider VDS sottostante usato. I valori restituiti possibili includono quanto segue.

Codice/valore restituito Descrizione
S_OK
La destinazione è stata creata correttamente.
VDS_E_NOT_SUPPORTED
0x80042400L
L'oggetto sottosistema non supporta questo metodo. Ciò indica che il provider hardware ha impostato il flag di VDS_SF_SUPPORTS_SIMPLE_TARGET_CONFIG nel membro ulFlagsdella struttura VDS_SUB_SYSTEM_PROP per l'oggetto sottosistema.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
La cache del provider è danneggiata. Ciò indica un problema di comunicazione o software all'interno di un provider che memorizza nella cache le informazioni sui dispositivi collegati. Il chiamante può usare il metodo IVdsHwProvider::Reenumerate seguito dal metodo IVdsHwProvider ::Refresh per ripristinare la cache.
VDS_E_OBJECT_DELETED
0x8004240BL
L'oggetto sottosistema non è più presente.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Il sottosistema si trova in uno stato non riuscito e non è in grado di eseguire l'operazione richiesta.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Un'altra operazione è in corso. Questa operazione non può continuare fino al completamento delle operazioni precedenti.
VDS_E_NAME_NOT_UNIQUE
0x80042701L
Un nome non univoco è stato specificato nel parametro pwszIscsiName .

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2003 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vdshwprv.h
Libreria Uuid.lib
Componente ridistribuibile VDS 1.1

Vedi anche

IVdsAsync

IVdsLunIscsi::AssociateTargets

IVdsSubSystem::GetProperties

IVdsSubSystemIscsi

VDS_ASYNC_OUTPUT

VDS_SUB_SYSTEM_FLAG

VDS_SUB_SYSTEM_PROP