Metodo IVdsLun::RemovePlex (vds.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.
Rimuove un plex da un LUN.
Sintassi
HRESULT RemovePlex(
[in] VDS_OBJECT_ID plexId,
[out] IVdsAsync **ppAsync
);
Parametri
[in] plexId
GUID del plex LUN da rimuovere.
[out] ppAsync
Indirizzo di un puntatore dell'interfaccia IVdsAsync , che il VDS inizializza sul ritorno. I chiamanti devono rilasciare l'interfaccia. Usare questa interfaccia per annullare, attendere o eseguire query sullo stato dell'operazione.
Se si chiama IVdsAsync::Wait su questo metodo e viene restituito un valore HRESULT riuscito, è necessario rilasciare le interfacce restituite nella struttura VDS_ASYNC_OUTPUT chiamando il metodo IUnknown::Release su ogni puntatore dell'interfaccia. Tuttavia, se Wait restituisce un valore HRESULT non riuscito o se il parametro pHrResultdiWait riceve un valore HRESULT non riuscito, i puntatori di interfaccia nella struttura VDS_ASYNC_OUTPUT sono NULL e non devono essere rilasciati. È possibile testare i valori HRESULT di esito positivo o negativo usando le macro SUCCESSED e FAILED definite in Winerror.h.
Valore restituito
Questo metodo può restituire valori HRESULT standard, ad esempio E_INVALIDARG o 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 |
---|---|
|
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. |
|
L'oggetto LUN non è più presente. |
|
Il LUN è in uno stato non riuscito e non è in grado di eseguire l'operazione richiesta. |
|
Un'altra operazione è in corso; questa operazione non può continuare fino al completamento dell'operazione o delle operazioni precedenti. |
|
Può essere restituito da qualsiasi metodo che accetta una costante VDS_OBJECT_ID . Questo valore restituito indica che l'identificatore non fa riferimento a un oggetto esistente. |
Commenti
Il plex rimosso smette di esistere e il VDS libera gli extent. Un chiamante non può rimuovere un plex LUN autonomo. Si noti che un LUN può perdere la tolleranza di errore a causa di questa operazione. Ad esempio, se l'operazione trasforma il LUN da mirroring a semplice, il LUN non è più a tolleranza di errore.
Gli implementatori devono restituire un puntatore all'interfaccia IVdsAsync per questo metodo, indipendentemente dal fatto che la chiamata avvia un'operazione asincrona.
Se un chiamante richiama il metodo RemovePlex con il parametro plexId impostato su un valore non valido, è necessario restituire VDS_E_OBJECT_NOT_FOUND.
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | vds.h |
Libreria | Uuid.lib |