Foxtable(狐表)用户栏目专家坐堂 → 有关短信平台相关


  共有10422人关注过本帖树形打印复制链接

主题:有关短信平台相关

帅哥哟,离线,有人找我吗?
baoxyang
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3313 积分:23146 威望:0 精华:1 注册:2009/3/31 11:25:00
有关短信平台相关  发帖心情 Post By:2012/2/5 21:39:00 [只看该作者]

假设对方发了一条长短信,如何读取完整一条信息?

因为电信一条短信内容不能超过70个字,如果超过了会自动分几条发送。

像这样的情况,如何抓取到发送的一条完整信息呢?

请各位指教!谢谢!!


 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2012/2/6 2:00:00 [只看该作者]

这样已经读取了所有短信(包括被分割成N条后发送进来的短信)

 

读取现有短信

如果要读取SIM卡中的现有短信,可以使用下面的代码:

If FoxSMS.Ready = False Then
MessageBox.show(
"请先连接短信猫!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
Return
End
If
Dim cnt As Integer = FoxSMS.SimMsgCount
If
cnt > 0 Then '如果SIM卡有短信
Dim
sendtime As String
Dim
strFrom As String
Dim
strContent As String
Dim
result As Integer
FoxSMS.AutoDelMsg = True '自动从SIM卡删除已经读取的短信
Tables("收件箱").StopRedraw()
For Index As Integer = 1 To FoxSMS.SimMsgCapacity
result = FoxSMS.ReadMsgForIndex(Index, strFrom, strContent, sendtime)

If
result = 0 Then
Dim
dr As Row = Tables("收件箱").AddNew()
dr(
"号码") = strFrom
dr(
"内容") = strContent
dr(
"发送时间") = SendTime
dr(
"接收时间") = Date.Now
End
If
Next
Tables
("收件箱").DataTable.Save()
Tables
("收件箱").ResumeRedraw()
End
If


 回到顶部
帅哥哟,离线,有人找我吗?
baoxyang
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3313 积分:23146 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2012/2/6 17:30:00 [只看该作者]

NewMessage

收到新短信后触发。

e参数:

Index:     整数性,此短信在SIM卡中的位置,之后要通过这个位置,才能读取和删除此短信。
Content:   字符型,短信内容。
FromNumber:字符型:发送短信的号码。
SentTime:  日期型,发送短信的时间。

 

 

如何读取一条完整的短信(因长度太长已分拆的短信),请各位赐教!祝大家元宵节快乐!!


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/2/6 17:32:00 [只看该作者]

没有好办法,只有笨办法,同一个号码发来的短信,如果发送时间和上一短信相差没有超过10秒,就认为是同一条。

 回到顶部