none
C# y Puerto Serial deteccion dinamica serial port RRS feed

  • Pregunta

  • Estimado estoy haciendo una aplicacion en c# el tema es que tengo que poner una tarjeta en puerta fija ejemplo COM1.

    Ejemplo: PuertoSerie.PortName = "COM1";
    ahi o nose donde me detecte automaticamente la tarjeta puesta en el puerto

    el tema es que se puede hacer nose en el load, una forma que me detecte la tarjeta automaticamente al momento de ejecutar el programa ?sea donde sea la puerta que se instale que sea dinamico no fijo la deteccion de la puerta serial

    Agradeceria mucho la ayuda
    Desde ya muchas gracias quedo atento a cualquier comentario

    Saludos

    miércoles, 6 de enero de 2016 14:19

Respuestas

Todas las respuestas

  • hola

    podrias analizar si WMI te puede ayudar

    What is the best way to scan for COM ports in C#?

    como veras podrias listar los puertos existentes y ver cuales estan habilitados

    Win32_SerialPort - WMI sample in VBScript

    si bien en el link veras un ejemplo en vbscript, la idea es conocer las propiedades que Win32_SerialPort brinda para acceder a los datos del puerto

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 6 de enero de 2016 16:47
  • Hola,

    En un principio el puerto com no dispone de ningun meto para saber si hay algo conectado a el, pero si dispone de un metodo que enumera los puertos com disponibles en el PC tanto fisicos como virtuales, que es SerialPort.GetPortNames() que devuelve un array.

    Con la ayuda de este metodo y un foreach, podrias ir cambiando el puerto y pedir el dato, si no hay dato ese puerto no es, si hay respuesta es el puerto correcto. El codigo para que sea lo mas automatico posible podria ir en el evento load del formulario.

    Un saludo.


    Es de buena educación dar las gracias cuando te ayudan, si alguna respuesta te ha sido de utilidad agradécelo marcandola como útil.
    Blog

    jueves, 7 de enero de 2016 14:08