监视其余已运行程序的串口通讯
监视其他已运行程序的串口通讯
如题。不参与串口通讯,但可作为另开软件截取报文。
提供资料、技术要点、源码示例等均可,如能实现,按所获得参考价值及回复先后给分。
我现用环境VB.Net2005,如果是VB或其他.net环境的资料可以参考,差的太多的其他环境就不一定看的懂了。
强调,不是串口通讯程序,是作为监视的程序存在,不干扰已存在的通讯程序。虽然有难度,但肯定可以实现。
如果回帖里不方便,参考资料可以发至这kuhura@163的邮箱。
------最佳解决方案--------------------
抛砖引玉了。
这里有一个比较白痴的主意,
楼主想要分析串口的通讯内容。如果是比较低级的通讯或者单向发送的东东,可以考虑编写一个转接程序。如果AB两个串口间通讯,编写CD两个串口,一个负责与A通讯,一个负责与B通讯,通讯内容直接传递过去。顺手记录下来。
不见得100%成功,但是简单易行。一个多串口卡才几十块钱。容易实现。呵呵~~ 拍砖的轻一点~~
------其他解决方案--------------------
这个问题要关注..........
------其他解决方案--------------------
这个问题要关注.........
------其他解决方案--------------------
试问LZ是否是想破译已存在的通讯程序呢?还是其它目的?
------其他解决方案--------------------
这个问题要关注.........
------其他解决方案--------------------
回3楼,没有任何破译其他程序的意思
根本的目的就是像TCP的某些抓包工具一样,监视一下串口数据。因为通讯程序中串口往往是以独占的方式打开,如果它本身不具备外在显示功能的话,很难看到实际传输的内容。
我工作时接触串口通讯的东西较多,如果能实现这个功能,会更方便一些。
见过个别类似的工具软件,操作都很麻烦,不知道怎么实现的。
------其他解决方案--------------------
串口是作为流设备存在的,其驱动是操作系统底层实现好的(linux下你可以随意修改,当然,既然你在vb.net提问,就默认你说的是windows)。其实很简单,底层驱动里,限制的串口是非共享方式打开的,不允许别人访问,就这么简单,要想一定实现这个,也未必不行。hook api,发现如果是createfile,并且打开的是符合这个正则"COM\d+:?"的文件名,就拦截下来,自己创建一个缓存,进行数据转发,这样你想转发几次都可以了。具体实现你自己考虑吧。方法我肯定是可行的。但我没时间帮你code。
------其他解决方案--------------------
嗯,这个得向前辈多学习才得滴
------其他解决方案--------------------
值得关注,值得学习
------其他解决方案--------------------
学习学习 呵呵 ,好东西。
------其他解决方案--------------------
这个问题要关注.........
------其他解决方案--------------------
厉害厉害.学习了.
------其他解决方案--------------------
进来学习学习。。。。
------其他解决方案--------------------
学习学习!!
------其他解决方案--------------------
好东西!
------其他解决方案--------------------
一定要学习!
------其他解决方案--------------------
一定要学习!
------其他解决方案--------------------
这个问题要关注.........
------其他解决方案--------------------
学习学习,不是很精通
------其他解决方案--------------------
进来学习学习。。。。
------其他解决方案--------------------
不知道怎么写。我也想写一个。
不过我知道accessport(软件名称)可以实现这个功能。
------其他解决方案--------------------
如题。不参与串口通讯,但可作为另开软件截取报文。
提供资料、技术要点、源码示例等均可,如能实现,按所获得参考价值及回复先后给分。
我现用环境VB.Net2005,如果是VB或其他.net环境的资料可以参考,差的太多的其他环境就不一定看的懂了。
强调,不是串口通讯程序,是作为监视的程序存在,不干扰已存在的通讯程序。虽然有难度,但肯定可以实现。
如果回帖里不方便,参考资料可以发至这kuhura@163的邮箱。
------最佳解决方案--------------------
抛砖引玉了。
这里有一个比较白痴的主意,
楼主想要分析串口的通讯内容。如果是比较低级的通讯或者单向发送的东东,可以考虑编写一个转接程序。如果AB两个串口间通讯,编写CD两个串口,一个负责与A通讯,一个负责与B通讯,通讯内容直接传递过去。顺手记录下来。
不见得100%成功,但是简单易行。一个多串口卡才几十块钱。容易实现。呵呵~~ 拍砖的轻一点~~
------其他解决方案--------------------
这个问题要关注..........
------其他解决方案--------------------
这个问题要关注.........
------其他解决方案--------------------
试问LZ是否是想破译已存在的通讯程序呢?还是其它目的?
------其他解决方案--------------------
这个问题要关注.........
------其他解决方案--------------------
回3楼,没有任何破译其他程序的意思
根本的目的就是像TCP的某些抓包工具一样,监视一下串口数据。因为通讯程序中串口往往是以独占的方式打开,如果它本身不具备外在显示功能的话,很难看到实际传输的内容。
我工作时接触串口通讯的东西较多,如果能实现这个功能,会更方便一些。
见过个别类似的工具软件,操作都很麻烦,不知道怎么实现的。
------其他解决方案--------------------
串口是作为流设备存在的,其驱动是操作系统底层实现好的(linux下你可以随意修改,当然,既然你在vb.net提问,就默认你说的是windows)。其实很简单,底层驱动里,限制的串口是非共享方式打开的,不允许别人访问,就这么简单,要想一定实现这个,也未必不行。hook api,发现如果是createfile,并且打开的是符合这个正则"COM\d+:?"的文件名,就拦截下来,自己创建一个缓存,进行数据转发,这样你想转发几次都可以了。具体实现你自己考虑吧。方法我肯定是可行的。但我没时间帮你code。
------其他解决方案--------------------
嗯,这个得向前辈多学习才得滴
------其他解决方案--------------------
值得关注,值得学习
------其他解决方案--------------------
学习学习 呵呵 ,好东西。
------其他解决方案--------------------
这个问题要关注.........
------其他解决方案--------------------
厉害厉害.学习了.
------其他解决方案--------------------
进来学习学习。。。。
------其他解决方案--------------------
学习学习!!
------其他解决方案--------------------
好东西!
------其他解决方案--------------------
一定要学习!
------其他解决方案--------------------
一定要学习!
------其他解决方案--------------------
这个问题要关注.........
------其他解决方案--------------------
学习学习,不是很精通
------其他解决方案--------------------
进来学习学习。。。。
------其他解决方案--------------------
不知道怎么写。我也想写一个。
不过我知道accessport(软件名称)可以实现这个功能。
------其他解决方案--------------------