我们有几个与 COM 端口、USB 等交互的遗留组件。

我想创建一个 .NET 程序来模拟 COM 端口并记录流量,将其转发到某处的 WCF 服务端点或直接转发到数据库中。也许还包装了一个真正的 COM 端口,类似于装饰器模式。

我环顾四周,发现了 Sourceforge 项目 Com0Com,但它是相当旧的 API,并且是 C++ 语言。

我意识到我可以通过创建行式打印机驱动程序来解决这个特定问题,并且从不真正与系统中注册的 COM 端口进行交互。一些与之相关的链接也将受到高度赞赏。

有人做过这个吗?如何在 .NET 中创建系统资源?

有帮助吗?

解决方案

您必须编写驱动程序,这是Com0Com是如何工作的。如果这些部件在进程内运行,您可以劫持Windows API函数,微软走弯路例如。

两种解决方案需要C / C ++,你不能在管理语言编写代码。虽然迂回可能是技术上是可行的,只是的非常的很难得到正确。你可以买,虽然一个解决方案,你的要求并不少见,虽然它过时了。日期为足够,寻找一个可能会有点棘手。

其他提示

有人做过这个吗?

补充一下 nobugz 所说的:

  • 当我编写 COM 端口模拟器时,我是从 DDK (serial.sys) 中的示例串行端口驱动程序开始的。

  • 当我编写 COM 端口包装器/记录器时,我从 DDK (parport.sys) 中的示例并行端口过滤器驱动程序开始。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top