Compartilhar via


Método IVdsSubSystemIscsi::CreateTarget (vds.h)

[Começando com Windows 8 e Windows Server 2012, a interface COM do Serviço de Disco Virtual é substituída pela API de Gerenciamento de Armazenamento do Windows.]

Cria um destino iSCSI. O ponteiro de interface para o novo objeto de destino pode ser recuperado chamando IVdsAsync::Wait por meio do parâmetro ppAsync . A estrutura VDS_ASYNC_OUTPUT retornada contém o ponteiro da interface do objeto de destino no membro ct.pTargetUnk .

Sintaxe

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

Parâmetros

[in] pwszIscsiName

Uma cadeia de caracteres que especifica o nome iSCSI a ser atribuído ao destino. O nome de destino deve ser exclusivo em todos os destinos em todos os subsistemas visíveis na rede.

Se pwszIscsiName for NULL ou apontar para uma cadeia de caracteres vazia, o provedor gerará o nome iSCSI a ser atribuído ao destino.

[in] pwszFriendlyName

Uma cadeia de caracteres que especifica o nome amigável a ser atribuído ao destino. Isso corresponde ao alias iSCSI.

[out] ppAsync

O endereço de um ponteiro de interface IVdsAsync , que o VDS inicializa no retorno. Os chamadores devem liberar a interface. Use essa interface para cancelar, aguardar ou consultar o status da operação. Se você chamar IVdsAsync::Wait nesse método e um valor HRESULT de êxito for retornado, você deverá liberar as interfaces retornadas na estrutura VDS_ASYNC_OUTPUT chamando o método IUnknown::Release em cada ponteiro de interface. No entanto, se Wait retornar um valor HRESULT de falha ou se o parâmetro pHrResult de Wait receber um valor HRESULT de falha, os ponteiros de interface na estrutura VDS_ASYNC_OUTPUT serão NULL e não precisarão ser liberados. Você pode testar valores HRESULT com êxito ou falha usando as macros SUCCEEDED e FAILED definidas em Winerror.h.

Retornar valor

Esse método pode retornar valores HRESULT padrão, como E_INVALIDARG ou E_OUTOFMEMORY, e valores retornados específicos do VDS. Ele também pode retornar códigos de erro do sistema convertidos usando a macro HRESULT_FROM_WIN32 . Os erros podem se originar do próprio VDS ou do provedor de VDS subjacente que está sendo usado. Os possíveis valores retornados incluem o seguinte.

Retornar código/valor Descrição
S_OK
O destino foi criado com êxito.
VDS_E_NOT_SUPPORTED
0x80042400L
O objeto subsistema não dá suporte a esse método. Isso indica que o provedor de hardware definiu o sinalizador VDS_SF_SUPPORTS_SIMPLE_TARGET_CONFIG no membro ulFlags da estrutura VDS_SUB_SYSTEM_PROP para o objeto do subsistema.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
O cache do provedor está corrompido. Isso indica um problema de software ou comunicação dentro de um provedor que armazena em cache informações sobre os dispositivos anexados. O chamador pode usar o método IVdsHwProvider::Reenumerate seguido pelo método IVdsHwProvider::Refresh para restaurar o cache.
VDS_E_OBJECT_DELETED
0x8004240BL
O objeto de subsistema não está mais presente.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
O subsistema está em um estado de falha e não consegue executar a operação solicitada.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Outra operação está em andamento. Essa operação não pode continuar até que as operações anteriores sejam concluídas.
VDS_E_NAME_NOT_UNIQUE
0x80042701L
Um nome não exclusivo foi especificado no parâmetro pwszIscsiName .

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho vds.h
Biblioteca Uuid.lib
Redistribuível VDS 1.1

Confira também

IVdsAsync

IVdsLunIscsi::AssociateTargets

IVdsSubSystem::GetProperties

IVdsSubSystemIscsi

VDS_ASYNC_OUTPUT

VDS_SUB_SYSTEM_FLAG

VDS_SUB_SYSTEM_PROP