📄 module1.vb
字号:
Module Module1
Public s As SMS
Sub Main()
Do
Console.WriteLine("Please Input PDU code(e to exit):")
Dim PDUCode As String = Console.ReadLine()
If UCase(PDUCode) = "E" Then Exit Do
Dim T As SMS.SMSType = GetSMSType(PDUCode)
Console.WriteLine(T.ToString)
Select Case T
Case SMS.SMSType.EMS_RECEIVED
s = New EMS_RECEIVED(PDUCode)
Case SMS.SMSType.SMS_RECEIVED
s = New SMS_RECEIVED(PDUCode)
Case SMS.SMSType.EMS_SUBMIT
s = New EMS_SUBMIT(PDUCode)
Case SMS.SMSType.SMS_SUBMIT
s = New SMS_SUBMIT(PDUCode)
Case SMS.SMSType.SMS_STATUS_REPORT
s = New SMS_STATUS_REPORT(PDUCode)
Case Else
Stop
End Select
Console.WriteLine(s.UnicodeToGB(s.TP_UD))
Loop
End Sub
Public Function GetSMSType(ByVal PDUCode As String) As SMS.SMSType
'取得FirstOctet
Dim FirstOctet As Byte
Dim L As Integer = SMS.GetByte(PDUCode)
SMS.GetByte(PDUCode)
SMS.GetString(PDUCode, (L - 1) * 2)
FirstOctet = SMS.GetByte(PDUCode)
'取得特征码
'取得基本码 最后两个bit + 是否有header作为标记
Dim t1 As Integer = FirstOctet And 3 '00000011
Dim t2 As Integer = FirstOctet And 64 '01000000
'特别处理
If t1 = 3 And t2 = 64 Then Return SMS.SMSType.EMS_SUBMIT
Return t1 + t2
End Function
End Module
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -