wh3845348
99887744
采纳率100%
2018-11-26 07:34

C#如何实现监听com口,但不占用。因为需要嵌入到项目中,需要实现代码,或者SDK源码等。

80
  1. 开源代码或SDK。
  2. 麻烦请不要发serialPort类,
  3. 因为主程序正在占用COM口,我的程序属于辅程序,需要监听COM口数据,并且不能占用com口。
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • hxycsdn9159 hxycsdn9159 3年前

    串口只能独占式打开,想要实现你说的问题,只能自己先写一个程序独占式打开串口,然后再由这个程序通过windows消息,或者网络协议等向其他的程序转发串口数据,你的这种情况就改造一下你的主程序,收到数据后往你的辅程序发送消息就可以了,如果你没办法修改这个主程序,就自己写一个底层监听串口的程序,然后由这个程序监听真正的串口消息并且虚拟出来其他串口,往你虚拟出来的串口转发消息,让你的主程序以及辅助程序监听这个虚拟串口

    点赞 2 评论 复制链接分享
  • a312185711 a312185711 2年前

    我现在也在做,你应该是做插件类的程序是吧。。
    是有2种方案。
    1、虚拟串口转发,就是你上面说的,
    2、钩子监听底层对应的api,用EasyHook。这个就是你想要的。
    当然,我也是做插件的。这2种都需要做、

    第一种方法呢,是需要主程序设定串口时,设成虚拟串口,而不是真正的物理串口。而你是监听虚拟串口,再发数据转发给真正的物理串口

    点赞 评论 复制链接分享