监视其他已运行程序的串口通讯如题。不参与串口通讯,但可作为另开软件截取报文。提供资料、技术要点、源码示例
监视其他已运行程序的串口通讯 如题。不参与串口通讯,但可作为另开软件截取报文。 提供资料、技术要点、源码示例等均可,如能实现,按所获得参考价值及回复先后给分。 我现用环境VB.Net2005,如果是VB或其他.net环境的资料可以参考,差的太多的其他环境就不一定看的懂了。 强调,不是串口通讯程序,是作为监视的程序存在,不干扰已存在的通讯程序。虽然有难度,但肯定可以实现。 如果回帖里不方便,参考资料可以发至这kuhura@163的邮箱。[最优解释] 抛砖引玉了。 这里有一个比较白痴的主意, 楼主想要分析串口的通讯内容。如果是比较低级的通讯或者单向发送的东东,可以考虑编写一个转接程序。如果AB两个串口间通讯,编写CD两个串口,一个负责与A通讯,一个负责与B通讯,通讯内容直接传递过去。顺手记录下来。 不见得100%成功,但是简单易行。一个多串口卡才几十块钱。容易实现。呵呵~~ 拍砖的轻一点~~[其他解释] 这个问题要关注..........[其他解释] 这个问题要关注.........[其他解释]
引用: 如题。不参与串口通讯,但可作为另开软件截取报文。 提供资料、技术要点、源码示例等均可,如能实现,按所获得参考价值及回复先后给分。 我现用环境VB.Net2005,如果是VB或其他.net环境的资料可以参考,差的太多的其他环境就不一定看的懂了。 强调,不是串口通讯程序,是作为监视的程序存在,不干扰已存在的通讯程序。虽然有难度,但肯定可以实现。 如果回帖里不方便,参考资料可以发至这kuhu…… 试问LZ是否是想破译已存在的通讯程序呢?还是其它目的?
[其他解释] 这个问题要关注.........
[其他解释] 回3楼,没有任何破译其他程序的意思
根本的目的就是像TCP的某些抓包工具一样,监视一下串口数据。因为通讯程序中串口往往是以独占的方式打开,如果它本身不具备外在显示功能的话,很难看到实际传输的内容。
我工作时接触串口通讯的东西较多,如果能实现这个功能,会更方便一些。
见过个别类似的工具软件,操作都很麻烦,不知道怎么实现的。
[其他解释] 串口是作为流设备存在的,其驱动是操作系统底层实现好的(linux下你可以随意修改,当然,既然你在vb.net提问,就默认你说的是windows)。其实很简单,底层驱动里,限制的串口是非共享方式打开的,不允许别人访问,就这么简单,要想一定实现这个,也未必不行。hook api,发现如果是createfile,并且打开的是符合这个正则"COM\d+:?"的文件名,就拦截下来,自己创建一个缓存,进行数据转发,这样你想转发几次都可以了。具体实现你自己考虑吧。方法我肯定是可行的。但我没时间帮你code。
[其他解释] 嗯,这个得向前辈多学习才得滴
[其他解释] 值得关注,值得学习
[其他解释] 学习学习 呵呵 ,好东西。
[其他解释] 这个问题要关注.........
[其他解释] 引用: 串口是作为流设备存在的,其驱动是操作系统底层实现好的(linux下你可以随意修改,当然,既然你在vb.net提问,就默认你说的是windows)。其实很简单,底层驱动里,限制的串口是非共享方式打开的,不允许别人访问,就这么简单,要想一定实现这个,也未必不行。hook api,发现如果是createfile,并且打开的是符合这个正则"COM\d+:?"的文件名,就拦截下来,自己创建一个缓存,进行数据…… 厉害厉害.学习了.
[其他解释] 进来学习学习。。。。
[其他解释] 学习学习!!
[其他解释] 好东西!
[其他解释] 一定要学习!
[其他解释] 一定要学习!
[其他解释] 这个问题要关注.........
[其他解释] 学习学习,不是很精通
[其他解释] 进来学习学习。。。。
[其他解释] 不知道怎么写。我也想写一个。
不过我知道accessport(软件名称)可以实现这个功能。
------其他解决方案--------------------
此问题值得关注
[其他解释] 学习学习中
[其他解释] very good
[其他解释] very good
[其他解释] this is very good.
[其他解释] google serialtrace
[其他解释] 呵呵!很好!!!
[其他解释] hello!
[其他解释] 主的有点儿高了看不清楚楼下啥动静儿了。抱歉啊!
[其他解释] 楼主想不劳而获?
[其他解释] 此技术恐将被用于非法用途
[其他解释] 关注
[其他解释] 进来学习一下!
[其他解释] 关注,学习
[其他解释] hehe
[其他解释] 顶一下
[其他解释] 我这有一个SUDT AccessPort,可以实现这个功能,挺好用的
[其他解释] 如果从驱动层写一个 串口的过滤驱动程序应该也可以。
就用这个.不过涉及到了驱动开发呵呵.
[其他解释] 查过不少资料,关于键盘及鼠标HOOK的方法较多,串口的较少。
回29楼:不劳而获不是好习惯,并不奢望。只是能做到相关技术的软件很多,由不得我们不好奇。
回32楼:诚然,许多病毒类的技术也可能使用的相同的技术手段,但我相信,只有非法的人,没有非法的知识。
就网络上这类知识的普及度和公开度来看,此帖得到答案的概率不太高。不过还是希望高人予以指点,串口的HOOK API和windows的HOOK有何异同?6楼或者其他的达人,代码并不指望,能否提供一下所涉关键API函数的名称?比如SetWindowsHookEx……
[其他解释] 如果从驱动层写一个 串口的过滤驱动程序应该也可以。
[其他解释] 学习,研究 !
[其他解释] 该回复于2010-04-17 15:18:30被版主删除
[其他解释] windows下可以hook以下几个API函数:
createfile(),openfile(),readfile(),writefile()。记录和串口有关的句柄或字符串,将截获到的信息打印出来即可。
代码可以在dll中实现,动态注入想监视的进程。
[其他解释] 这个问题需要关注
[其他解释] 路过,学习,学习,学习
[其他解释] very good
[其他解释] 高手向你学习没道理
[其他解释] 太高深了,观望学习中。
[其他解释] ganxie
[其他解释] 牛人向你学习没道理
[其他解释] 关注。。。
------其他解决方案--------------------
持续关注
[其他解释] 唉,菜鸟,不懂!!!
[其他解释] 学习,学习。
[其他解释] 有难度,高度关注
[其他解释] 好多高手!我也想写一个监视串口数据的程序,公司的考勤需要,但不太懂系统底层的东东,不会写。
[其他解释] 很需要学习呀。。。。
[其他解释] 你需要把设备串口线串联到两个串口,一个用于正常串口通讯,一个用于串口监视,具体怎么怎么监视跟普通串口通讯没有区别
[其他解释] 学习了......................
[其他解释] accessport确是可以监视串口通讯的数据。
[其他解释] 嗯,,可以破解,厉害
[其他解释] 看不懂啊
[其他解释] 该回复于2010-04-03 13:59:54被版主删除
[其他解释] 该回复于2010-04-03 13:59:54被版主删除
[其他解释] api hook是要写一个dll来实现的,如果你到vc版块发一张帖子,估计能有收获。并且,这个功能,还是用c++实现容易一些。原理是我说的那样,理论上可行……
[其他解释] 怎么好象高人都没有到?
[其他解释] 该回复于2011-08-18 11:58:45被版主删除
[其他解释] 我也想实现这样的功能,就是一直不知怎么解决,Hook api 也用的不熟,有谁能指点下要怎么hook CreateFile()
[其他解释] 学习,学习。。我也想写
[其他解释] 新手暂时看不懂,先回个贴,说不定以后有用
[其他解释] 沉了,再顶一下。
我找到了createfile的API,也找到了键盘鼠标的hook示例,但是不知道怎么能Hook串口。
[其他解释] 以前碰到这样的情况,之前主要的目的是为了监听该串口的数据流,最后相了一个土办法,就是该串口做一分二的处理。
[其他解释] 该回复于2012-01-09 09:35:36被版主删除
[其他解释] 该回复于2012-02-20 10:58:28被版主删除
[其他解释] 百度串口监听工具
[其他解释] 只能用API来实现了,需要端口共享
[其他解释] 高度关注中
[其他解释] 值得关注,值得学习
[其他解释] 该回复于2012-01-06 12:56:23被版主删除
[其他解释] 标记下先,关注下这个问题!