Pregunta

Tenemos varios componentes heredados que interactúan con los puertos COM, USB, etc.

Me gustaría crear un programa .NET que emular un puerto COM y registrar el tráfico, de transmisión de ésta a un extremo de servicio WCF en algún lugar o directamente en una base de datos. Tal vez también envolver un puerto COM real, algo así como el patrón decorador.

He mirado alrededor y he encontrado Sourceforge proyecto com0com, pero es bastante viejo y API en C ++.

Me doy cuenta de que puedo solucionar este problema específico mediante la creación de un controlador de impresora de línea y nunca realmente interactuar con los puertos COM registrados en el sistema. Algunos enlaces a que también sería muy apreciada.

¿Ha hecho esto a nadie? ¿Cómo se crea recursos del sistema en .NET?

¿Fue útil?

Solución

Usted tendría que escribir un controlador, así es como funciona com0com. Si estos componentes se ejecutan en proceso, que podría secuestrar las funciones API de Windows, desvíos de Microsoft, por ejemplo.

Cualquiera de las soluciones requiere C / C ++, no se puede escribir este código en un lenguaje administrado. Aunque desvío podría ser técnicamente posible, simplemente muy duro para hacerlo bien. Usted puede comprar una solución, sin embargo, sus requisitos no son infrecuentes, aunque se fechado. De fecha bastante que encontrar uno puede ser un poco complicado.

Otros consejos

  

ha hecho esto a alguien?

Para añadir a lo que dijo nobugz:

  • Cuando escribí un emulador de puerto COM, lo hice a partir del controlador de puerto serie de la muestra en el DDK (Serial.sys).

  • Cuando escribí un puerto COM envoltorio / registrador, lo hice a partir del controlador de filtro de puerto paralelo de la muestra en el DDK (parport.sys).

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