Freigeben über


IVdsLun::D elete-Methode (vdshwprv.h)

[Ab Windows 8 und Windows Server 2012 wird die COM-Schnittstelle des Virtuellen Datenträgerdiensts durch die Windows Storage Management-API ersetzt.]

Löscht die LUN und alle zugehörigen Plexes. Alle Daten auf der LUN gehen verloren. VDS gibt die dem LUN zugeordneten Ausdehnungen 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 HRESULT_FROM_WIN32-Makros 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 ist fehlerhaft 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 oder die vorherigen Vorgänge abgeschlossen sind.

Hinweise

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

Wenn eine LUN gelöscht wird, die für einen Zielcomputer enttarnt ist, ändert sich die Sichtbarkeit der LUN auf diesem Computer möglicherweise erst, wenn ein erneuter Busscan ausgeführt wird. Die VDS-Anwendung auf dem Zielcomputer initiiert den erneuten Busscan, indem sie IVdsService::Reenumerate aufruft. Die Einleitung des Busrescans 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 das Ergebnis eine Zugriffsverletzung des Anbieters sein. Der Hardwareanbieter ist für die Serialisierung dieser Methoden bei Bedarf verantwortlich, um solche Synchronisierungsprobleme zu minimieren.

Der Hardwareanbieter ist für das Entfernen der Partitionsinformationen der LUN verantwortlich, damit die LUN wiederverwendet werden kann. Wenn es sich bei der LUN um einen MBR-Datenträger handelt, wird dies durch Schreiben von Nullen auf die ersten und letzten 1 MB des Datenträgers erreicht. Für einen 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 vdshwprv.h
Bibliothek Uuid.lib

Weitere Informationen

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun

IVdsLun::GetProperties