Compartir a través de


Método IVdsLun::D elete (vds.h)

[A partir de Windows 8 y Windows Server 2012, la interfaz COM del servicio de disco virtual se sustituye por la API de administración de almacenamiento de Windows.]

Elimina el LUN y todos sus plexos. Se pierden los datos del LUN. VDS libera las extensiones asignadas al LUN.

Sintaxis

HRESULT Delete();

Valor devuelto

Este método puede devolver valores HRESULT estándar, como E_OUTOFMEMORY y valores devueltos específicos de VDS. También puede devolver códigos de error del sistema convertidos mediante la macro HRESULT_FROM_WIN32 . Los errores pueden originarse en VDS en sí o en el proveedor de VDS subyacente que se está usando. Entre los valores devueltos posibles se incluyen los siguientes.

Código o valor devuelto Descripción
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Este valor devuelto indica un problema de software o comunicación dentro de un proveedor que almacena en caché información sobre la matriz. Use el método IVdsHwProvider::Reenumerate seguido del método IVdsHwProvider::Refresh para restaurar la memoria caché.
VDS_E_OBJECT_DELETED
0x8004240BL
El objeto LUN ya no está presente.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
El LUN está en estado de error y no puede realizar la operación solicitada.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Otra operación está en curso; esta operación no puede continuar hasta que se completen las operaciones o operaciones anteriores.

Comentarios

Si una aplicación contiene una referencia a la interfaz IVdsLun y llama a IVdsLun::D elete, los implementadores deben devolver VDS_E_OBJECT_DELETED en llamadas posteriores a métodos como GetProperties en esa interfaz. En este caso, la interfaz tiene una referencia pendiente y es válida, pero el objeto subyacente ya no existe.

Si se elimina un LUN sin máscara en una máquina de destino, es posible que la visibilidad del LUN en esa máquina no cambie hasta que se realice un nuevo examen de bus. La aplicación VDS en la máquina de destino inicia el rescan de bus llamando a IVdsService::Reenumerate. El inicio del examen de bus es responsabilidad de la aplicación VDS, no del proveedor de hardware.

Si se llama a un método como IVdsLun::D elete en un subproceso mientras se llama a IVdsSubSystem::QueryLuns en otro subproceso que se ejecuta simultáneamente, el resultado podría ser una infracción de acceso del proveedor. El proveedor de hardware es responsable de serializar estos métodos según sea necesario para minimizar estos problemas de sincronización.

El proveedor de hardware es responsable de quitar la información de partición del LUN para que se pueda reutilizar el LUN. Si el LUN es un disco MBR, esto se logra escribiendo ceros en el primer y último MB del disco. Para un disco GPT, se deben escribir ceros en el primer y último 16 KB del disco.

Requisitos

   
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado vds.h
Library Uuid.lib

Consulte también

IVdsHwProvider::Reenumerate

IVdsHwProvider::Refresh

IVdsLun

IVdsLun::GetProperties