Condividi tramite


Metodo IVdsLun::D elete (vdshwprv.h)

[A partire da Windows 8 e Windows Server 2012, l'interfaccia COM del servizio disco virtuale viene sostituita dall'API gestione archiviazione di Windows.

Elimina il LUN e tutti i relativi plessi. Tutti i dati nel LUN sono persi. VDS libera gli extent allocati al LUN.

Sintassi

HRESULT Delete();

Valore restituito

Questo metodo può restituire valori HRESULT standard, ad esempio E_OUTOFMEMORY e valori restituiti specifici di VDS. Può anche restituire codici di errore di sistema convertiti usando la macro HRESULT_FROM_WIN32 . Gli errori possono derivare da VDS stesso o dal provider VDS sottostante usato. I valori restituiti possibili includono quanto segue.

Codice/valore restituito Descrizione
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Questo valore restituito segnala un problema di comunicazione o software all'interno di un provider che memorizza nella cache le informazioni sulla matrice. Usare il metodo IVdsHwProvider::Reenumerate seguito dal metodo IVdsHwProvider ::Refresh per ripristinare la cache.
VDS_E_OBJECT_DELETED
0x8004240BL
L'oggetto LUN non è più presente.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Il LUN è in uno stato non riuscito e non è in grado di eseguire l'operazione richiesta.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Un'altra operazione è in corso; questa operazione non può continuare fino al completamento dell'operazione o delle operazioni precedenti.

Commenti

Se un'applicazione contiene un riferimento all'interfaccia IVdsLun e chiama IVdsLun::D elete, i implementer devono restituire VDS_E_OBJECT_DELETED nelle chiamate successive a metodi come GetProperties in tale interfaccia. In questo caso, l'interfaccia ha un riferimento in sospeso ed è valida, ma l'oggetto sottostante non esiste più.

Se viene eliminata una lun non mascherata in un computer di destinazione, la visibilità del LUN nel computer potrebbe non cambiare fino a quando non viene eseguita una nuova analisi del bus. L'applicazione VDS nel computer di destinazione avvia la scansione del bus chiamando IVdsService::Reenumerate. L'avvio della scansione del bus è la responsabilità dell'applicazione VDS, non del provider hardware.

Se un metodo come IVdsLun::D elete viene chiamato in un thread mentre IVdsSubSystem::QueryLuns viene chiamato in un altro thread in esecuzione simultaneamente, il risultato potrebbe essere una violazione dell'accesso del provider. Il provider hardware è responsabile della serializzazione di questi metodi in base alle esigenze per ridurre al minimo tali problemi di sincronizzazione.

Il provider hardware è responsabile della rimozione delle informazioni sulla partizione del LUN in modo che il LUN possa essere riutilizzato. Se il LUN è un disco MBR, questo viene eseguito scrivendo zero al primo e all'ultimo 1 MB del disco. Per un disco GPT, gli zeri devono essere scritti nel primo e nell'ultimo 16 KB del disco.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vdshwprv.h
Libreria Uuid.lib

Vedi anche

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun

IVdsLun::GetProperties