假设对方发了一条长短信,如何读取完整一条信息?
因为电信一条短信内容不能超过70个字,如果超过了会自动分几条发送。
像这样的情况,如何抓取到发送的一条完整信息呢?
请各位指教!谢谢!!
这样已经读取了所有短信(包括被分割成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
NewMessage
收到新短信后触发。
e参数:
Index: 整数性,此短信在SIM卡中的位置,之后要通过这个位置,才能读取和删除此短信。
Content: 字符型,短信内容。
FromNumber:字符型:发送短信的号码。
SentTime: 日期型,发送短信的时间。
如何读取一条完整的短信(因长度太长已分拆的短信),请各位赐教!祝大家元宵节快乐!!
没有好办法,只有笨办法,同一个号码发来的短信,如果发送时间和上一短信相差没有超过10秒,就认为是同一条。