Pregunta: | 24931 - COMO SABER SI LA BANDEJA DEL CD ESTá AFUERA O ADENTRO |
Autor: | Melvin Sánchez González |
Esto en cualquier momento, como un test que retorne el estado de la bandeja. |
Respuesta: | Jorge Luis Guzman Abreu |
Es fácil si capturamos el mensaje WM_DEVICECHANGE:
-Pon esta linea en la parte private de la declaración de tu form: private { Private declarations } {Esta Linea/This line} procedure WMDeviceChange(var Msg: TMessage);message WM_DEVICECHANGE; (Con esto capturamos el mensaje, enviándolo a nuestra propia procedure de tratamiento) -Pon esta procedure en la implementation de tu form: procedure TForm1.WMDeviceChange(var Msg: TMessage); const CD_METIDO = $8000; CD_SACADO = $8004; var Aviso : String; begin inherited; case Msg.wParam of CD_METIDO : Aviso := 'CD Insertado'; CD_SACADO : Aviso := 'CD Sacado'; end; ShowMessage(Aviso); end; |