elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Abrir y cerrar bandeja.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Abrir y cerrar bandeja.  (Leído 13,267 veces)
Meta


Desconectado Desconectado

Mensajes: 3.438



Ver Perfil WWW
Re: Abrir y cerrar bandeja.
« Respuesta #10 en: 31 Mayo 2009, 22:31 pm »

Por ahora no encuentro nada. Me he dado cuenta que al pulsar el botón de la propia bandeja al abrirla como al cerrarla no se ejecuta el label para que te diga cuando está abierto o cerrado.

Por lo que veo, parece que hay que leer desde el lector la información que suelta la bandeja al abrir y cerrar, así C# lo tendrá que interpretar.

Seguiré buscando información...


« Última modificación: 31 Mayo 2009, 22:34 pm por Meta » En línea

h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: Abrir y cerrar bandeja.
« Respuesta #11 en: 31 Mayo 2009, 22:38 pm »

 :rolleyes: Tal vez sirva esta info:

Código
  1. using System;
  2. using System.Management;
  3.  
  4. namespace CDROMManagement
  5. {
  6.  class WMIEvent
  7.  {
  8.    static void Main(string[] args)
  9.    {
  10.      WMIEvent we = new WMIEvent();
  11.      ManagementEventWatcher w = null;
  12.      WqlEventQuery q;
  13.      ManagementOperationObserver observer = new
  14.          ManagementOperationObserver();
  15.  
  16.      // Bind to local machine
  17.      ConnectionOptions opt = new ConnectionOptions();
  18.      opt.EnablePrivileges = true; //sets required privilege
  19.      ManagementScope scope = new ManagementScope( "root\\CIMV2", opt );
  20.  
  21.      try
  22.      {
  23.        q = new WqlEventQuery();
  24.        q.EventClassName = "__InstanceModificationEvent";
  25.        q.WithinInterval = new TimeSpan( 0, 0, 1 );
  26.  
  27.        // DriveType - 5: CDROM
  28.        q.Condition = @"TargetInstance ISA 'Win32_LogicalDisk' and
  29.            TargetInstance.DriveType = 5";
  30.        w = new ManagementEventWatcher( scope, q );
  31.  
  32.        // register async. event handler
  33.        w.EventArrived += new EventArrivedEventHandler( we.CDREventArrived );
  34.        w.Start();
  35.  
  36.        // Do something usefull,block thread for testing
  37.        Console.ReadLine();
  38.      }
  39.      catch( Exception e )
  40.      {
  41.        Console.WriteLine( e.Message );
  42.      }
  43.      finally
  44.      {
  45.        w.Stop();
  46.      }
  47.    }
  48.  
  49.    // Dump all properties
  50.    public void CDREventArrived(object sender, EventArrivedEventArgs e)
  51.    {
  52.      // Get the Event object and display it
  53.      PropertyData pd = e.NewEvent.Properties["TargetInstance"];
  54.  
  55.      if (pd != null)
  56.      {
  57.        ManagementBaseObject mbo = pd.Value as ManagementBaseObject;
  58.  
  59.        // if CD removed VolumeName == null
  60.        if (mbo.Properties["VolumeName"].Value != null)
  61.        {
  62.          Console.WriteLine("CD has been inserted");
  63.        }
  64.        else
  65.        {
  66.          Console.WriteLine("CD has been ejected");
  67.        }
  68.      }
  69.    }
  70.  }
  71. }


En línea

Meta


Desconectado Desconectado

Mensajes: 3.438



Ver Perfil WWW
Re: Abrir y cerrar bandeja.
« Respuesta #12 en: 31 Mayo 2009, 22:56 pm »

Eso estoy  mirando...

http://en.csharp-online.net/Detect_CD-ROM_Insertion

Saludo.
En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Abrir y cerrar bandeja.
« Respuesta #13 en: 1 Junio 2009, 00:37 am »

 :-[ :D ;-) :o :o :o :o :o

me salvaste la vida (??). Originalmente quería hacer un aplicación que "simulara" ser el dialogo de "que desea hacer? el contenido del cd es (fotos/archivos de video, etc)" que sale cuando ponemos un cd en windows XP, para que funcione en windows 2000  ;D (tengo una pc vieja que la usan personas que no tienen idea de la computacion, solo navegan y chatean xD)


 ;-) ;-) ;-) Gracias Emt.dev y Meta por ayudar me mas de lo que pedia  ;-) ;-) ;-)

« Última modificación: 1 Noviembre 2010, 23:26 pm por raul338 » En línea

Meta


Desconectado Desconectado

Mensajes: 3.438



Ver Perfil WWW
Re: Abrir y cerrar bandeja.
« Respuesta #14 en: 1 Junio 2009, 00:46 am »

De nada. Si consigues hacerlo funcionar con tus propios códigos. Lo publicas aquí para verlo.

Saludos y de nada.
En línea

h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: Abrir y cerrar bandeja.
« Respuesta #15 en: 1 Junio 2009, 20:09 pm »

De nada. Fue solo cuestión de buscar por la red.
Y como dijo meta, si logras algo, sube tus códigos y compartelos con el foro.  ;)

Salu2!
En línea

Meta


Desconectado Desconectado

Mensajes: 3.438



Ver Perfil WWW
Re: Abrir y cerrar bandeja.
« Respuesta #16 en: 12 Agosto 2014, 09:22 am »

Hola de nuevo queridísimos amigos:

Espero que sigan vivos a estas altura de la vida.

Tengo instalado el Virtual Box con openSUSE 13.1 y el último Ubuntu. ¿Con qué compilador y lenguaje es recomendable usar para hacer lo mismo bajo Linux?

Me imagino que será capaz de hacerlo.

aaaaaaaaaaaah. La revisión de códigos sin problemas ninguno como los códigos de arriba, aquí uso el Visual C# 2013 y funciona de maravilla.
Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10.  
  11. using System.Runtime.InteropServices; // No olvidar.
  12.  
  13. namespace Lector_IDE
  14. {
  15.    public partial class Form1 : Form
  16.    {
  17.        public Form1()
  18.        {
  19.            InitializeComponent();
  20.        }
  21.  
  22.        [DllImport("winmm.dll")]
  23.        public static extern Int32 mciSendString(string lpstrCommand,
  24.            StringBuilder lpstrReturnString, int uReturnLength, IntPtr hwndCallback);
  25.        //Why did i put this here?
  26.        StringBuilder rt = new StringBuilder(127);
  27.  
  28.        private void button_Abrir_Click(object sender, EventArgs e)
  29.        {
  30.            mciSendString("set CDAudio door open", rt, 127, IntPtr.Zero);
  31.            label_Mensaje.Text = "Abierto";
  32.        }
  33.  
  34.        private void button_Cerrar_Click(object sender, EventArgs e)
  35.        {
  36.            mciSendString("set CDAudio door closed", rt, 127, IntPtr.Zero);
  37.            label_Mensaje.Text = "Cerrado";
  38.        }
  39.    }
  40. }
  41.  

Saludo.
« Última modificación: 12 Agosto 2014, 09:24 am por Meta » En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cerrar y Abrir Aplicacion
Programación Visual Basic
Gionix 3 2,809 Último mensaje 16 Marzo 2006, 00:41 am
por _Sergi_
abrir y cerra bandeja cd de la victima!
Programación Visual Basic
Carpex 3 2,170 Último mensaje 24 Octubre 2007, 20:54 pm
por Mr pom0
Abrir la bandeja de CD/DVD por javascript
Desarrollo Web
Aikanáro Anário 6 5,370 Último mensaje 13 Agosto 2011, 04:37 am
por Nakp
abrir bandeja de cd rom con ensamblador
Programación General
jim12328 2 3,223 Último mensaje 12 Mayo 2014, 20:50 pm
por simorg
Cerrar y abrir la bandeja del lector con el botón manualmente, y que lo sepa C#
.NET (C#, VB.NET, ASP)
Meta 5 2,797 Último mensaje 23 Marzo 2017, 14:16 pm
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines