Freigeben über


IVdsSubSystemIscsi::CreateTarget-Methode (vds.h)

[Ab Windows 8 und Windows Server 2012 wird die COM-Schnittstelle des Virtuellen Datenträgerdiensts von der Windows Storage Management-API abgelöst.]

Erstellt ein iSCSI-Ziel. Der Schnittstellenzeiger für das neue Zielobjekt kann durch Aufrufen von IVdsAsync::Wait über den ppAsync-Parameter abgerufen werden. Die zurückgegebene VDS_ASYNC_OUTPUT-Struktur enthält den Zielobjektschnittstellenzeiger im ct.pTargetUnk-Element .

Syntax

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

Parameter

[in] pwszIscsiName

Eine Zeichenfolge, die den iSCSI-Namen angibt, der dem Ziel zugewiesen werden soll. Der Zielname muss für alle Ziele in allen Subsystemen eindeutig sein, die im Netzwerk sichtbar sind.

Wenn pwszIscsiNameNULL ist oder auf eine leere Zeichenfolge zeigt, generiert der Anbieter den iSCSI-Namen, der dem Ziel zugewiesen werden soll.

[in] pwszFriendlyName

Eine Zeichenfolge, die den Anzeigenamen angibt, der dem Ziel zugewiesen werden soll. Dies entspricht dem iSCSI-Alias.

[out] ppAsync

Die Adresse eines IVdsAsync-Schnittstellenzeigers , der von VDS bei der Rückgabe initialisiert wird. Aufrufer müssen die Schnittstelle freigeben. Verwenden Sie diese Schnittstelle, um den Status des Vorgangs abzubrechen, darauf zu warten oder den Status des Vorgangs abzufragen. Wenn Sie IVdsAsync::Wait für diese Methode aufrufen und ein erfolgreicher HRESULT-Wert zurückgegeben wird, müssen Sie die in der VDS_ASYNC_OUTPUT-Struktur zurückgegebenen Schnittstellen freigeben, indem Sie die IUnknown::Release-Methode für jeden Schnittstellenzeiger aufrufen. Wenn Wait jedoch einen HRESULT-Fehlerwert zurückgibt oder der pHrResult-Parameter von Wait einen HRESULT-Fehlerwert empfängt, sind die Schnittstellenzeiger in der VDS_ASYNC_OUTPUT-StrukturNULL und müssen nicht freigegeben werden. Sie können HRESULT-Werte für Erfolg oder Fehler testen, indem Sie die in Winerror.h definierten Makros SUCCEEDED und FAILED verwenden.

Rückgabewert

Diese Methode kann HRESULT-Standardwerte wie E_INVALIDARG oder E_OUTOFMEMORY und VDS-spezifische Rückgabewerte zurückgeben. Es kann auch konvertierte Systemfehlercodes mithilfe des makros HRESULT_FROM_WIN32 zurückgeben. Fehler können vom VDS selbst oder vom zugrunde liegenden VDS-Anbieter stammen, der verwendet wird. Folgende Rückgabewerte sind möglich.

Rückgabecode/-wert BESCHREIBUNG
S_OK
Das Ziel wurde erfolgreich erstellt.
VDS_E_NOT_SUPPORTED
0x80042400L
Das Subsystemobjekt unterstützt diese Methode nicht. Dies gibt an, dass der Hardwareanbieter das VDS_SF_SUPPORTS_SIMPLE_TARGET_CONFIG-Flag im ulFlags-Member der VDS_SUB_SYSTEM_PROP-Struktur für das Subsystemobjekt festgelegt hat.
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Der Cache des Anbieters ist beschädigt. Dies weist auf ein Software- oder Kommunikationsproblem innerhalb eines Anbieters hin, der Informationen zu den angefügten Geräten zwischenspeichert. Der Aufrufer kann die IVdsHwProvider::Reenumerate-Methode gefolgt von der IVdsHwProvider::Refresh-Methode verwenden, um den Cache wiederherzustellen.
VDS_E_OBJECT_DELETED
0x8004240BL
Das Subsystemobjekt ist nicht mehr vorhanden.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Das Subsystem weist einen Fehlerstatus auf und kann den angeforderten Vorgang nicht ausführen.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Ein weiterer Vorgang wird ausgeführt. Dieser Vorgang kann erst fortgesetzt werden, wenn vorherige Vorgänge abgeschlossen sind.
VDS_E_NAME_NOT_UNIQUE
0x80042701L
Im parameter pwszIscsiName wurde ein nicht eindeutiger Name angegeben.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile vds.h
Bibliothek Uuid.lib
Verteilbare Komponente VDS 1.1

Weitere Informationen

IVdsAsync

IVdsLunIscsi::AssociateTargets

IVdsSubSystem::GetProperties

IVdsSubSystemIscsi

VDS_ASYNC_OUTPUT

VDS_SUB_SYSTEM_FLAG

VDS_SUB_SYSTEM_PROP