Pregunta

¿Qué tecnología basada en navegador me permitiría para consultar los dispositivos USB conectados actualmente del cliente - especifica el nombre y el ID de dispositivo de éstos. Por supuesto, estoy bien con el cliente tener que permitir y confirmar dicha actividad.

No me importa si es de bajo nivel, que utiliza WMI, acceso directo o algún otro tipo de capa de acceso, todo lo que quiero es ser capaz de utilizarlo dentro de un navegador. Te agradecería ejemplos de código y yo sería feliz adicional con una solución independiente del navegador.

¿Fue útil?

Solución 2

Estoy un poco decepcionado por la falta de intentar al menos dame una solución parcial. A pesar de que yo no era capaz de encontrar una solución independiente del navegador, se me ocurrió una para IE en Windows, mediante WMI, con mayor precisión el objeto ActiveX WbemScripting.SWbemLocator. Es mejor que nada, mejor que "no se puede hacer eso".

Por lo tanto, para cualquier persona que esté interesado, aquí está:

    function pollConnectedDevices()
    {
     var locator = new ActiveXObject("WbemScripting.SWbemLocator");
     var conn = locator.ConnectServer(".", "root\\cimv2");
     var result = conn.ExecQuery("Select * From Win32_USBHub");
     var enumer = new Enumerator(result);

     for (;!enumer.atEnd();enumer.moveNext ())
     {
       var hub = enumer.item ();

       alert(hub.Name + " " + hub.DeviceId);
     }

     setTimeout("pollConnectedDevices()",1000);
   }
   setTimeout("pollConnectedDevices()",1000);

Sí, es sólo en IE en Windows. Sí, sí necesita el permiso del usuario para hacer su cosa. Pero, sí, es algo, es posible, hace lo que necesito que haga.

Si alguien más sabe de otra manera - y estoy hablando aquí sobre el código, no opiniones, todavía estoy en busca de soluciones parciales para otros navegadores y sistemas operativos. consultas dispositivo USB es una cosa interesante a tener y, a pesar de todos los argumentos, digo que "de software, se supone que debe hacer algo, no le impide hacer algo".

Otros consejos

No se puede hacer eso desde un navegador (con motivos). Usted necesitará algún plug-in que el usuario tiene que instalar.

ActiveX de IE, IE barra de herramientas, Netscape Plugin envoltorio (para Opera / Windows, Firefox / Windows, probablemente Chrome / Windows) => WMI. Es de suponer que tal cosa sería prohibida por cualquier software antivirus depósito de chatarra de grado.

Se puede: a> ir por ese camino, b> ir con tarjetas inteligentes soporte nativo en lugar de hacer seguridad USB dongles C> escribir su propio software, que se iniciará un servidor web en 127.0.0.1 y acceder a ella desde JavaScript en su página (donde la descarga de instalación es ofrecido).

tendrá que escribir un plugin usted mismo para esto.

A java applet. Puede usar http://javax-usb.org/ .

Y así se ha hecho usando Java applets http://forums.sun.com /thread.jspa?threadID=5371360

Así que sin duda existe una solución !!!

imposible hacerlo con javascript estándar.

trabajo pudo con ActiveX (Sólo IE y Windows) o Flash o una extensión del navegador (por vía oral).

Hm, desde la parte superior de mi cabeza, pienso XBAP podría ayudarle. http://www.xbap.org/ . A partir de entonces es sólo C # con un poco de #usblib.

Editar Hm, se dice que se ejecuta se ejecuta en modo de recinto. Y parece ser IE sólo Pluggin. Supongo XBAP es un fallo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top