大顽石

凡事太紧,缘分必早尽

  IT博客 :: 首页 :: 联系 :: 聚合  :: 管理
  9 Posts :: 0 Stories :: 14 Comments :: 0 Trackbacks

首先,这个解码器能够对TLV格式描述的消息进行解码。在这个TLV格式中,T和L都是可选项。比如在很多通信协议中,都是直接消息元素后跟着消息元素,没有T和L来进行限制的。

然后,要说明的是这个解码器是用DLL提供出来。如何使用,请参考Bin.rar里面的readme。

接着,要说明这个解码器是我用业余时间编写的。里面的代码和设计文档及其丑陋。本来是搞的玩的一个东西,可是后来发现运行居然还挺稳定,也挺好用(曾经成功用于2种通信相关消息的解码),于是就补丁加补丁地维护了下来。如果有人对这个解码器的源码感兴趣,可以下载src.rar。里面有相关的文档。

为了帮助对这个工具感兴趣的朋友,我说明一下这个工具的开发背景。

当时做这个工具,是为了对基于[T][L]V结构的消息流来进行解码。这个工具又想和具体的消息定义分开。这样,对不同的协议的消息结构,只要更新协议栈就可以,而解码器不用变化。这样,解码器TLVDecoder.dll就诞生了。同时,为了让消息的协议栈的编写能够让非专业人员也能够进行,所以采用了在mdb数据库中编写,然后用一个转换工具转换为二进制的协议栈的方式。这样,createprotocol.exe诞生了。最终,消息可以分开在多个.mdb文件中进行编写,并用createprotocol.exe这个工具把它们组装起来。不过这种编写消息库的方式现在看来,也不算太好的方式。估计没有谁有性子看完messagerule.doc,并自己尝试一下,虽然我的经验是,通过2个小时的培训,一个经验为0的朋友就可以开始编写自己的消息库了。

由于各种原因,对这个工具的重写一直没有能够进行,现在看起来也不会再进行了。所以虽然丑陋,也就拿出来了。如果能够对谁有帮助,那就是我的万幸了。

下载链接:
二进制:/Files/bigstone1998/TLVDecode_bin.rar
源码:/Files/bigstone1998/TLVDecode_src.rar

祝你好运


posted on 2008-09-05 23:30 大顽石 阅读(4149) 评论(3)  编辑 收藏 引用

Feedback

# re: 一个TLV格式消息的解码器及其源码 2009-04-01 10:55 凌云
写的不错,下载来学习一下,谢谢  回复  更多评论
  

# re: 一个TLV格式消息的解码器及其源码 2010-05-21 22:04 田原
朋友,我刚搞pboc tlv解码,看得一头雾水,不懂啥意思,能否解释一下啊?  回复  更多评论
  

# re: 一个TLV格式消息的解码器及其源码 2013-02-27 19:20 yp
感谢技术大神  回复  更多评论
  

只有注册用户登录后才能发表评论。