高手们帮忙呀

解决方案 »

  1.   

    http://soft.yesky.com/SoftChannel/72342380468109312/20040523/1800310.shtml
    参考一下
      

  2.   

    0891683108705500F011000D91683117352446F2000800124F60597DFF0C00480065006C006C006F0021
    编码后的信息  08 - 指的是短信中心号的长度,也就是指(91)+( 683108705500F0)的长度  91 - 指的是短信息中心号码类型。91是TON/NPI遵守International/E.164标准,指在号码前需加'+'号;此外还有其它数值,但91最常用。  683108705500F0 - 短信息中心号码。由于位置上略有处理,实际号码应为:8613800731500(字母F是指长度减1)。这需要根据不同的地域作相应的修改。前面的(08)+(91)+( 683108705500F0)实际上就构成了整个短信的一部份,通称短消息中心地址(Address of the SMSC)。  11 - 文件头字节  00 - 信息类型(TP-Message-Reference)  0D - 被叫号码长度  91 - 被叫号码类型  其实在实际处理中,我们通常把11000D91写死在程序中,因为在国内,这些数据都是不会改变的。  683117352446F2 -被叫号码,经过了位移处理,实际号码为"8613715342642"。上面的(00)+(0D)+(91)+( 683117352446F2),构成了整个短信的第二部份目的地址(TP-Destination-Address)。  00 - 协议标识TP-PID,这里一般为00  08 - 数据编码方案TP-DCS(TP-Data-Coding-Scheme),采用前面说的USC2(16bit)数据编码  00 - 有效期TP-VP(TP-Valid-Period)  12-长度TP-UDL(TP-User-Data-Length),也就是4F60597DFF0C00480065006C006C的长度 36 / 2 = 18 的十六进 12  4F60597DFF0C00480065006C006C 006F0021- 这里就是短信内容了,实际内容为:"你好,Hello!"
      

  3.   

    判断字头:比如说,短信发送成功后MODEM要返回如: 
    +CMT:,26
    我们需要判断+CMT:
    在程序里也就是搜索字符串
    if instr(1,“+CMT:”)<> 0 then
     
     '这里写要执行的操作,例如返回话费
    end if 
    不好意思,我只会VB,不知道你明白没有