tiene - C#¿Cómo saber si la bandeja de la unidad de DVD está abierta?
no se abre la bandeja de cd (2)
La propiedad MediaLoaded (Win32_CDROMDrive) le dirá si tiene un disco cargado. Estoy un poco confundido lo que buscas:
- bandeja de disco abierta
- bandeja de disco cerrada - sin medios
- bandeja de disco cerrada - tiene medios
La propiedad MediaLoaded ayudará en el caso 2 (Falso) y 3 (Verdadero)
Tengo una aplicación de lectura y grabación de DVD en C #. Quiero poder detectar la diferencia entre una unidad vacía (sin disco) y una unidad abierta.
Edición: después de un poco más de búsqueda en Google, creo que una mejor descripción del problema es " Quiero acceder al estado de la bandeja de la unidad: abierta o cerrada "
Puedo usar
ManagementObjectSearcher("SELECT * FROM Win32_LogicalDisk WHERE DriveType= 5")
para buscar todas las unidades de DVD en el sistema, y las propiedades me dicen si hay un disco en la unidad. Access
propiedad de Access
me dice si hay un disco en blanco.
Pero el Access
es nulo cuando la unidad está abierta, y cuando la unidad está cerrada y vacía. Y no veo ninguna otra propiedad que cambie cuando la unidad se abre o se cierra.
¿Alguien sabe cómo distinguir una unidad abierta de una unidad cerrada y vacía?
Estoy usando Win7, pero lo ideal sería que la solución también funcionara en XP y Vista.
IOCTL_DISK_GET_LENGTH_INFO puede ser de utilidad para usted.