smsdeal.cls
来自「通过西门子模块收发短信」· CLS 代码 · 共 1,520 行 · 第 1/4 页
CLS
1,520 行
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "4"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
longRlt4 = SearchFourth(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 And longRlt4 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon + FourthList(longRlt4).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
FourthList(longRlt4).strPhone = ""
FourthList(longRlt4).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
End Select
Else
longCodeLenth = Chex(Left(strLenthCode, 1)) * 16 + Chex(Right(strLenthCode, 1))
strPDUContent = Right(Left(strSMSComin, longLOCATION + 37 + 2 * longCodeLenth), 2 * longCodeLenth)
End If
ElseIf strSMSType = "联通" Or strSMSType = "外地" Then
strLenthCode = Right(Left(strSMSComin, longLOCATION + 35), 2)
HeadTag = ""
If InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0500") >= 4 And InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0500") <= 10 Then
HeadTag = "0500"
ElseIf InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0608") >= 4 And InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0608") <= 10 Then
HeadTag = "0608"
End If
If HeadTag <> "" Then
PartContPdu = GetBetweenPart(Right(strSMSComin, Len(strSMSComin) - 80), HeadTag, Chr(13) & Chr(10))
MidTag = Left(PartContPdu, 8)
PartContPdu = Right(PartContPdu, Len(PartContPdu) - 8)
SumTag = Right(Left(MidTag, 6), 1)
TurnTag = Right(MidTag, 1)
Select Case TurnTag
Case "1"
Call WriteFirst(strHandNum, PartContPdu)
Case "2"
Call WriteSecond(strHandNum, PartContPdu)
Case "3"
Call WriteThird(strHandNum, PartContPdu)
Case "4"
Call WriteFourth(strHandNum, PartContPdu)
End Select
Select Case SumTag
Case "2"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "3"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "4"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
longRlt4 = SearchFourth(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 And longRlt4 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon + FourthList(longRlt4).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
FourthList(longRlt4).strPhone = ""
FourthList(longRlt4).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
End Select
Else
longCodeLenth = Chex(Left(strLenthCode, 1)) * 16 + Chex(Right(strLenthCode, 1))
strPDUContent = Right(Left(strSMSComin, longLOCATION + 35 + 2 * longCodeLenth), 2 * longCodeLenth)
End If
ElseIf strSMSType = "香港" Then
strLenthCode = Right(Left(strSMSComin, longLOCATION + 39), 2)
HeadTag = ""
If InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0500") >= 4 And InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0500") <= 10 Then
HeadTag = "0500"
ElseIf InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0608") >= 4 And InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0608") <= 10 Then
HeadTag = "0608"
End If
If HeadTag <> "" Then
PartContPdu = GetBetweenPart(Right(strSMSComin, Len(strSMSComin) - 80), HeadTag, Chr(13) & Chr(10))
MidTag = Left(PartContPdu, 8)
PartContPdu = Right(PartContPdu, Len(PartContPdu) - 8)
SumTag = Right(Left(MidTag, 6), 1)
TurnTag = Right(MidTag, 1)
Select Case TurnTag
Case "1"
Call WriteFirst(strHandNum, PartContPdu)
Case "2"
Call WriteSecond(strHandNum, PartContPdu)
Case "3"
Call WriteThird(strHandNum, PartContPdu)
Case "4"
Call WriteFourth(strHandNum, PartContPdu)
End Select
Select Case SumTag
Case "2"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "3"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "4"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
longRlt4 = SearchFourth(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 And longRlt4 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon + FourthList(longRlt4).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
FourthList(longRlt4).strPhone = ""
FourthList(longRlt4).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
End Select
Else
longCodeLenth = Chex(Left(strLenthCode, 1)) * 16 + Chex(Right(strLenthCode, 1))
strPDUContent = Right(Left(strSMSComin, longLOCATION + 39 + 2 * longCodeLenth), 2 * longCodeLenth)
End If
ElseIf strSMSType = "秘书台" Then '获取UNICODE码长度信息及文字内容UNICODE码
strLenthCode = Right(Left(strSMSComin, longLOCATION + 27), 2)
HeadTag = ""
If InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0500") >= 4 And InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0500") <= 10 Then
HeadTag = "0500"
ElseIf InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0608") >= 4 And InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0608") <= 10 Then
HeadTag = "0608"
End If
If HeadTag <> "" Then
PartContPdu = GetBetweenPart(Right(strSMSComin, Len(strSMSComin) - 80), HeadTag, Chr(13) & Chr(10))
MidTag = Left(PartContPdu, 8)
PartContPdu = Right(PartContPdu, Len(PartContPdu) - 8)
SumTag = Right(Left(MidTag, 6), 1)
TurnTag = Right(MidTag, 1)
Select Case TurnTag
Case "1"
Call WriteFirst(strHandNum, PartContPdu)
Case "2"
Call WriteSecond(strHandNum, PartContPdu)
Case "3"
Call WriteThird(strHandNum, PartContPdu)
Case "4"
Call WriteFourth(strHandNum, PartContPdu)
End Select
Select Case SumTag
Case "2"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "3"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "4"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
longRlt4 = SearchFourth(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 And longRlt4 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon + FourthList(longRlt4).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
FourthList(longRlt4).strPhone = ""
FourthList(longRlt4).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
End Select
Else
longCodeLenth = Chex(Left(strLenthCode, 1)) * 16 + Chex(Right(strLenthCode, 1))
strPDUContent = Right(Left(strSMSComin, longLOCATION + 27 + 2 * longCodeLenth), 2 * longCodeLenth)
End If
ElseIf strSMSType = "上海秘书台" Then
strLenthCode = Right(Left(strSMSComin, longLOCATION + 25), 2)
HeadTag = ""
If InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0500") >= 4 And InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0500") <= 10 Then
HeadTag = "0500"
ElseIf InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0608") >= 4 And InStr(Right(strSMSComin, Len(strSMSComin) - 80), "0608") <= 10 Then
HeadTag = "0608"
End If
If HeadTag <> "" Then
PartContPdu = GetBetweenPart(Right(strSMSComin, Len(strSMSComin) - 80), HeadTag, Chr(13) & Chr(10))
MidTag = Left(PartContPdu, 8)
PartContPdu = Right(PartContPdu, Len(PartContPdu) - 8)
SumTag = Right(Left(MidTag, 6), 1)
TurnTag = Right(MidTag, 1)
Select Case TurnTag
Case "1"
Call WriteFirst(strHandNum, PartContPdu)
Case "2"
Call WriteSecond(strHandNum, PartContPdu)
Case "3"
Call WriteThird(strHandNum, PartContPdu)
Case "4"
Call WriteFourth(strHandNum, PartContPdu)
End Select
Select Case SumTag
Case "2"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "3"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
Case "4"
longRlt1 = SearchFirst(strHandNum)
longRlt2 = SearchSecond(strHandNum)
longRlt3 = SearchThird(strHandNum)
longRlt4 = SearchFourth(strHandNum)
If longRlt1 >= 0 And longRlt2 >= 0 And longRlt3 >= 0 And longRlt4 >= 0 Then
strPDUContent = FirstList(longRlt1).strCon + SecondList(longRlt2).strCon + ThirdList(longRlt3).strCon + FourthList(longRlt4).strCon
FirstList(longRlt1).strPhone = ""
FirstList(longRlt1).strCon = ""
SecondList(longRlt2).strPhone = ""
SecondList(longRlt2).strCon = ""
ThirdList(longRlt3).strPhone = ""
ThirdList(longRlt3).strCon = ""
FourthList(longRlt4).strPhone = ""
FourthList(longRlt4).strCon = ""
longCodeLenth = Len(strPDUContent) / 2
Else
Call DelSMS(Index, PortNo)
GoTo Escape
End If
End Select
Else
longCodeLenth = Chex(Left(strLenthCode, 1)) * 16 + Chex(Right(strLenthCode, 1))
strPDUContent = Right(Left(strSMSComin, longLOCATION + 27 + 2 * longCodeLenth), 2 * longCodeLenth)
End If
ElseIf strSMSType = "外地秘书台" Or strSMSType = "蔚蓝联通" Or strSMSType = "东莞移动" Then
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?