主题:[转帖]利用VB 实现短消息收发
iamben250
[专家分:1870] 发布于 2005-09-29 20:19:00
利用VB 实现短消息收发
摘要:近来,笔者用VB 开发了一套PC 机上的短消息收发软件,本文根据笔者的实际开发经
验整理而得。文中介绍了在计算机上实现短消息收发的模式,重点描述了PDU 模式,包括
PDU 模式下的UCS2 编码、解码原理,以及发送与接收PDU 串的编制方式,在此基础上介绍
了利用VB 中的MSCOMM 控件,实现短消息收发的核心程序。
关键字:短消息收发、PDU 模式、UCS2 编解码、UNICODE 码、AT 指令、MSCOMM 控件
正文:
现在,短消息收发软件得到越发广泛的应用,从政府机关、学校到广大的传媒机构,
直至诸多的企事业单位,颇受使用者欢迎。首先,手机用户的普及为这类软件的出现提供了
可能,而使用这类软件,与人们传统惯用的打电话、发电子邮件等通讯方式相比,有独到的
优点,它能将信息及时送达对方,不会像查收信件(或电邮)存在时间上的延误,也不存在
类似于打电话占线或无人接听之类的烦恼;短消息收发软件可以实现消息收发双方的实时交
互,用它还可以实现消息的群体发送或定时发送等。最近,笔者尝试用VB 来开发一套实现
短消息收发功能的信息系统。至提笔之时,整套系统已经开发完毕。鉴于篇幅的原因,笔者
不可能将整个系统一一尽数,而只能将开发过程中与短消息收发功能相关的一些技术要点和
心得体验与众读者进行分享。
一、短消息收发的实现模式
目前,计算机串口上连接GSM MODEM,用它向手机发送短消息,是比较适合于小型项目
开发的一种实现模式。这种方法要求对AT 指令集和串口编程比较熟悉。在开发过程中笔者
使用的是索尼爱立信公司的GM29 模块。
这种方法收发短消息又分三种模式:BLOCK 模式、TEXT 模式和PDU 模式。BLOCK 模式已
是昔日黄花,现在用的很少了; TEXT 模式则只能发送ASCII 码,它不能发送中文的UNICODE
码——确切地讲,从技术上来说是可以用于发送中文短消息的,但是国内的手机基本上不支
持;而PDU 模式开发起来则较为复杂,它需要编写专门的函数来将文本转换为PDU 格式,但
PDU 模式被所有手机支持,可以使用任何字符集,它也是手机默认的编码方式。笔者在开发
中正是选用的PDU 模式。
二、PDU 模式
用PDU 模式收发短消息可以使用三种编码: 7-bit 编码、8-bit 编码和UCS2 编码。 7-bit
编码用于发送普通的ASCII 字符;8-bit 编码通常用于发送数据消息,如图片或铃声等;UCS2
编码用于发送Unicode 字符。由于笔者在系统中要实现中文短消息的发送,所以选择用UCS2
编码,即中文Unicode 码。
(一)UCS2 编码原理
所谓UCS2 编码,是将单个的字符(1-2 个字节)按ISO/IEC10646 的规定,转变为16 位
的Unicode 宽字符。即将单个的字符转换为由四位的‘0’-‘9’、 ‘A’-‘F’的数字和字
母组成的字符串。待发送的消息以UCS2 码的形式进行发送。
先介绍VB 中的Ascw()和Hex()函数。Ascw()函数用来求出字符串的Unicode 值;Hex()
函数返回表示十六进制数字值的字符串。对这两个函数用例子来说明:
?Ascw("您")
24744
?Hex(24744)
60A8
回复列表 (共57个回复)
41 楼
xidu [专家分:0] 发布于 2006-01-04 10:35:00
好文啊!拜托给俺一份gaoweisyb@163.com
42 楼
大鱼 [专家分:60] 发布于 2006-01-04 10:44:00
给一份zhanershiyi316@163.com
43 楼
chenjun302 [专家分:80] 发布于 2006-01-07 11:39:00
大侠年,我也要一份啊
44 楼
cyhu0215 [专家分:0] 发布于 2006-03-07 17:16:00
发份给我吧!
45 楼
Kyuurayi [专家分:190] 发布于 2006-03-07 23:35:00
Kyuurayi@hotmail.com
谢谢 很想去了解 虽然现在水平还没那么高 但是总是想多看看 谢谢分享
46 楼
niuha [专家分:0] 发布于 2006-04-15 17:51:00
楼主给我发一份谢谢?
Email:pengshunsheng110@21cn.com
47 楼
buzaihui [专家分:290] 发布于 2006-04-16 20:14:00
很好帖
确实好帖
少见的好帖
真 TMD 好帖
难得一见的好帖
千年等一回的好帖
好得不能再好的好帖
惊天地且泣鬼神的好帖
让人阅毕击掌三叹的好帖
让人佩服得五体投地的好帖
让人奔走相告曰须阅读的好帖
让斑竹看后决定加精固顶的好帖
让人看后在各论坛纷纷转贴的好帖
让人看后连成人网站都没兴趣的好帖
让人看完后就要往上顶往死里顶的好帖
让人看后不断在各种场合重复引用的好帖
让人一见面就问你看过某某好帖没有的好帖
让人半夜上厕所都要打开电脑再看一遍的好帖
让个读过后都下载在硬盘里详细研究欣赏的好帖
让人走路吃饭睡觉干什么事连做梦都梦到它的好帖
让人翻译成36种不同外语流传国内外世界各地的好帖
让人纷纷唱道过年过节不送礼要送就送某某帖子的好帖
让国家领导人命令将该帖刻在纯金版上当国礼送人的好帖
让网络上纷纷冒出该帖的真人版卡通版搞笑版成人版的好帖
让人在公共厕所里不再乱涂乱化而是纷纷对它引经据典的好帖
让某位想成名的少女向媒体说她与该帖作者发生过性关系的好帖
让人根据它写成小说又被不同导演拍成48个不同版本的电影的好帖
让某名导演跟据此帖改拍的电影在奥斯卡上一连拿了11个奖项的好帖
让人大代表们看完后联名要求根据该帖的内容对宪法做适当修改的好帖
让人为了谁是它的原始作者纷纷地闹上法院打官司要争得它的版权的好帖
让各大学府纷纷邀请该帖作者去就如何发表优秀网络文学为题目演讲的好帖
让人为了该帖而成立了各种学会来研究并为不同的理解争得眼红脖子粗的好帖
让美国警察于今后逮捕人说你有权保持沉默还有权阅读某某帖子要不要啊的好帖
让本拉登躲在山洞里还命令他手下冒着被美军发现的危险去上网下载来阅读的好帖
让萨达姆被捕时被发现他随身携带的除了一把手枪之外还有的就是它的复印件的好帖
让比尔盖茨在懂事会上发给与会者人手一份该帖命令仔细阅读后才讨论其他事宜的好帖
让诺贝儿奖理事会破天荒地因该帖的出现而开会讨论一直决定今后设立最佳帖子奖的好帖
让联合国安理会决定将它译成宇宙语由中国神州六号升空后不断播放看有没有外星人的好帖
让人看完后IE锁死连瑞星诺顿都没法修复只好格式化硬盘重装启动后主页显示的还是它的好帖
48 楼
孙瑞 [专家分:590] 发布于 2006-08-11 16:04:00
我也要
wedown@163.com
49 楼
linxuanxu [专家分:9360] 发布于 2006-08-11 21:30:00
linxuanxu_fore@tom.com
//Thanks
50 楼
lightrain108 [专家分:0] 发布于 2006-11-22 16:50:00
搂主也给我份吧!多谢!
电子邮箱:lightrain108@163.com
[em1]
我来回复