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 |
---|---|
|
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. |
|
Das LUN-Objekt ist nicht mehr vorhanden. |
|
Die LUN weist einen Fehlerstatus auf und kann den angeforderten Vorgang nicht ausführen. |
|
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 |