【问题标题】:Writing Virtual RS232 Port Emulator that runs in user code编写在用户代码中运行的虚拟 RS232 端口仿真器
【发布时间】:2015-07-21 05:23:16
【问题描述】:

有没有什么方法可以编写一个不需要作为设备驱动程序安装的虚拟 RS232 端口仿真器?

我想要的是一个模拟物理硬件设备的程序。它告诉操作系统它是端口 COM1。其他程序看到 COM1 并使用 .NET SerialPort 类之类的代码打开它。建立连接后,模拟器开始模拟设备。

我知道有虚拟 COM 端口驱动程序可以做到这一点,但我的老板不想使用它们。

这个可以吗?

【问题讨论】:

    标签: windows device-driver


    【解决方案1】:

    a sample UMDF Virtual serial port driver sample that Microsoft provides。这不是内核模式,所以这可能会超越不想成为“驱动程序”的原因(我在这里读为“内核驱动程序”)。在某些时候,您需要与 IO 子系统进行交互,以使您暴露的 COM 端口成为一个设备(即使它只是一个软件设备),所以我认为这与您所描述的内容一样高。

    【讨论】:

    • 谢谢。我会查看代码并将其展示给我的老板以征求他的意见。
    • 是的 - UMDF 将是最好的选择。我不确定是否需要适当的驱动程序,但在这种情况下,您至少与 BSOD 隔离,这可能是远离内核 IMO 的第一大理由。
    最近更新 更多