Pregunta

La empresa para la que trabajo hace que el hardware que se comunica con el ordenador a través de un puerto serie.Empresas de terceros escribir el software que se comunica con nuestro hardware.

Hay veces en las que necesita para diagnosticar nuestro hardware.Sin embargo, una tercera parte de software de aplicación se conecta al puerto serie cuando se inicia Windows, el bloqueo de cualquier otro tipo de conexión.No sé el nombre de esta aplicación/servicio y no es siempre el mismo.

Hay alguna forma de:

  • Encontrar el nombre/pid de la aplicación/servicio que se está utilizando un determinado puerto serie o
  • Robar la conexión del puerto serie desde otra aplicación.

vb.net de preferencia, pero voy a tomar un idioma agnóstico contestar.

¿Fue útil?

Solución

Usted puede utilizar el process explorer la herramienta de SysInternals para la búsqueda de los identificadores abiertos.En este caso, usted quiere buscar 'de Serie', ya que utiliza los nombres de dispositivo que no puede asignar a los números de puerto com.(por ejemplo,COM1 es \Device\Serial0 en mi sistema).

Si usted quiere tomar el control del puerto serie desde otra app creo que necesitaría la cooperación del conductor.

Otros consejos

Como Rob Walker dijo, se puede encontrar que el uso de un puerto serie utilizando Process Explorer.La mayoría de las veces, escribir Ctrl+F y la búsqueda de la "serie" y le mostrará que tiene un puerto en serie abierta, pero me encontré en una situación en la que mi "COM3" del puerto serie de la manija apareció como "\Device\VCP0".Puede ser extraño, porque se estaba ejecutando bajo VirtualBox con un USB-a-serial conector.

Si la búsqueda para "número de serie" y "device\vcp" no se obtiene ningún resultado, usted puede ser capaz de averiguar cómo puerto serie asas son nombrados por la apertura de uno con un programa conocido.En el Explorador de Procesos, mostrar el panel inferior con cada proceso abierto de asas escribiendo Ctrl+L.Haga clic en el proceso que usted utiliza para abrir el puerto serie y mirar a través de la parte inferior del panel para ver que se encarga de buscar como podrían ser un puerto serie.Usted puede abrir y cerrar el puerto, mientras que usted está buscando, y el identificador de archivo debería aparecer y desaparecer, así como se resalta en verde o rojo.Por supuesto, esto sólo es posible si usted tiene más de un puerto serie o el puerto serie está tratando de diagnosticar no siempre es bloqueado por algún misterio proceso.

Sysinternals tiene un montón de utilidades que me parece muy útil y educativo para el seguimiento de qué procesos se están haciendo para el sistema.

Ellos tienen una utilidad que hace exactamente lo que usted necesita llamado Portmon, y dar un poco de información sobre cómo funciona cerca de la parte inferior de la página.Que info y algunas preguntas probablemente le dará todo lo que usted necesita para aplicar a ti mismo si la utilidad no es suficiente.

-Adam

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