Freigeben über


IVdsLun::D elete-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.]

Löscht die LUN und alle ihre Plexes. Alle Daten auf der LUN gehen verloren. VDS gibt die der LUN zugeordneten Blöcke frei.

Syntax

HRESULT Delete();

Rückgabewert

Diese Methode kann HRESULT-Standardwerte wie 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
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Dieser Rückgabewert signalisiert ein Software- oder Kommunikationsproblem innerhalb eines Anbieters, der Informationen zum Array zwischenspeichert. Verwenden Sie die IVdsHwProvider::Reenumerate-Methode gefolgt von der IVdsHwProvider::Refresh-Methode , um den Cache wiederherzustellen.
VDS_E_OBJECT_DELETED
0x8004240BL
Das LUN-Objekt ist nicht mehr vorhanden.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Die LUN 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 der vorherige Vorgang abgeschlossen ist.

Hinweise

Wenn eine Anwendung einen Verweis auf die IVdsLun-Schnittstelle enthält und IVdsLun::D elete aufruft, sollten Implementierer VDS_E_OBJECT_DELETED bei nachfolgenden Aufrufen von Methoden wie GetProperties auf dieser Schnittstelle zurückgeben. In diesem Fall verfügt die Schnittstelle über einen ausstehenden Verweis und ist gültig, aber das zugrunde liegende Objekt ist nicht mehr vorhanden.

Wenn eine LUN gelöscht wird, die einem Zielcomputer entlarvt wird, ändert sich die Sichtbarkeit der LUN auf diesem Computer möglicherweise erst, wenn ein erneuter Busscan durchgeführt wird. Die VDS-Anwendung auf dem Zielcomputer initiiert den erneuten Busscan, indem IVdsService::Reenumerate aufgerufen wird. Die Einleitung der erneuten Überprüfung des Busses liegt in der Verantwortung der VDS-Anwendung, nicht des Hardwareanbieters.

Wenn eine Methode wie IVdsLun::D elete in einem Thread aufgerufen wird, während IVdsSubSystem::QueryLuns in einem anderen Thread aufgerufen wird, der gleichzeitig ausgeführt wird, kann dies zu einer Verletzung des Anbieterzugriffs führen. Der Hardwareanbieter ist für die Serialisierung dieser Methoden nach Bedarf verantwortlich, um solche Synchronisierungsprobleme zu minimieren.

Der Hardwareanbieter ist dafür verantwortlich, die Partitionsinformationen der LUN zu entfernen, damit die LUN wiederverwendet werden kann. Wenn es sich bei der LUN um einen MBR-Datenträger handelt, wird dies erreicht, indem Nullen auf die ersten und letzten 1 MB des Datenträgers geschrieben werden. Bei einem GPT-Datenträger müssen Nullen auf die ersten und letzten 16 KB des Datenträgers geschrieben werden.

Anforderungen

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

Weitere Informationen

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun

IVdsLun::GetProperties