📄 frminit.frm
字号:
frmMDI.comm.InputLen = 1
While frmMDI.comm.InBufferCount > 0
ReDim Preserve arr_return(Count + 1)
arr_return(Count) = frmMDI.comm.Input
If Count > 2 Then
If arr_return(Count - 1) = "O" And arr_return(Count) = "K" Then
newFlag = True
End If
End If
If Count > 4 Then
If arr_return(Count - 4) = "S" And arr_return(Count - 3) = "M" And arr_return(Count - 1) = "," Then
newNo(newCount) = arr_return(Count)
newCount = newCount + 1
End If
End If
Count = Count + 1
Wend
End Function
Private Sub cmdInit1_Click()
Timer1.Enabled = False
Timer2.Enabled = False
Timer3.Enabled = False
Timer4.Enabled = False
Unload frmFind
Call RecTemp
If comboInit1.Text = "" Or comboInit2.Text = "" Then
If comboInit1.Text = "" Then
MsgBox "请选择串口", vbOKOnly, "通知"
Else
MsgBox "请选择波特率", vbOKOnly, "通知"
End If
Else
If Not frmMDI.comm.PortOpen Then
frmMDI.comm.CommPort = intPort
frmMDI.comm.Settings = strSet
frmMDI.comm.PortOpen = True
Text1.Text = "选择的串口:" + Str(frmMDI.comm.CommPort) + Chr(13) + Chr(10) + "波特率设置:" + frmMDI.comm.Settings
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "串口初始化成功"
frmMDI.comm.Output = "AT" + Chr(13) + Chr(10)
Timer1.Enabled = True
Else
MsgBox "串口已打开,请先关闭串口", vbOKOnly, "通知"
End If
End If
End Sub
Private Sub cmdInit2_Click()
Unload Me
End Sub
Private Sub comboInit1_Click()
If comboInit1.Text = "COM1" Then
intPort = 1
End If
If comboInit1.Text = "COM2" Then
intPort = 2
End If
End Sub
Private Sub comboInit2_Click()
strSet = comboInit2.Text
End Sub
Private Sub cmdInit3_Click()
If frmMDI.comm.PortOpen Then
frmMDI.comm.PortOpen = False
receiveStr = ""
receiveStr1 = ""
receiveStr2 = ""
receiveStr3 = ""
End If
End Sub
Private Sub Form_Load()
ReDim TXT(0)
newCount = 0
newSub = 0
intall2 = 0
delCount = 1
SetFlag1 = False
SetFlag2 = False
Dim simNum As String
Dim Count As Integer
Dim objCn As New Connection
Dim objRs As New Recordset
Dim strCn As String, strSQL As String
Count = 0
End Sub
Private Sub Timer1_Timer()
If frmMDI.comm.InBufferCount > 0 Then
Timer1.Enabled = False
Call GetData
If arr_return(UBound(arr_return) - 4) = Hex(Asc("O")) And arr_return(UBound(arr_return) - 3) = Hex(Asc("K")) Then
'MsgBox "测试连接成功", vbOKOnly, "通知"
'Text1.Text = Text1.Text + Chr(13) + Chr(10) + receiveStr
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "与SMS模块连接成功"
frmMDI.comm.Output = "ATE0" + Chr(13) + Chr(10)
Timer2.Enabled = True
Else
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "与SMS模块连接失败,等待"
frmMDI.comm.Output = "AT" + Chr(13) + Chr(10)
Timer1.Enabled = True
End If
End If
End Sub
Private Sub Timer2_Timer()
If frmMDI.comm.InBufferCount > 0 Then
Timer2.Enabled = False
Call GetData1
If arr_return1(UBound(arr_return1) - 4) = Hex(Asc("O")) And arr_return1(UBound(arr_return1) - 3) = Hex(Asc("K")) Then
''MsgBox "关闭回显成功", vbOKOnly, "通知"
''Text1.Text = Text1.Text + Chr(13) + Chr(10) + receiveStr1
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "关闭回显成功"
'frmMDI.comm.Output = "AT+CMGF=1" + Chr(13) + Chr(10)
'frmMDI.comm.Output = "AT+CNMI=2,1,0,0,1" + Chr(13) + Chr(10)
frmMDI.comm.Output = "AT^SSYNC=1" + Chr(13) + Chr(10)
Timer21.Enabled = True
Else
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "关闭回显失败,等待"
frmMDI.comm.Output = "ATE0" + Chr(13) + Chr(10)
Timer2.Enabled = True
End If
End If
End Sub
'----------------------------------------------------------------------------------
'--------------------------------------------------------------------------------------------------
Private Sub Timer21_Timer()
If frmMDI.comm.InBufferCount > 0 Then
Timer21.Enabled = False
Call GetData11
If arr_return11(UBound(arr_return11) - 4) = Hex(Asc("O")) And arr_return11(UBound(arr_return11) - 3) = Hex(Asc("K")) Then
''MsgBox "关闭回显成功", vbOKOnly, "通知"
''Text1.Text = Text1.Text + Chr(13) + Chr(10) + receiveStr1
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "设置AT^SSYNC成功"
'frmMDI.comm.Output = "AT+CMGF=1" + Chr(13) + Chr(10)
'frmMDI.comm.Output = "AT+CNMI=2,1,0,0,1" + Chr(13) + Chr(10)
frmMDI.comm.Output = "AT+CNMI=2,1,0,0,1" + Chr(13) + Chr(10)
Timer31.Enabled = True
Else
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "设置AT^SSYNC失败,等待"
frmMDI.comm.Output = "AT^SSYNC=1" + Chr(13) + Chr(10)
'frmMDI.comm.Output = "ATE0" + Chr(13) + Chr(10)
Timer21.Enabled = True
End If
End If
End Sub
Private Sub Timer31_Timer()
If frmMDI.comm.InBufferCount > 0 Then
Timer31.Enabled = False
Call GetData21
If arr_return21(UBound(arr_return21) - 4) = Hex(Asc("O")) And arr_return21(UBound(arr_return21) - 3) = Hex(Asc("K")) Then
''MsgBox "设置消息格式(text模式)成功", vbOKOnly, "通知"
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "设置消息返回方式成功"
'frmMDI.comm.Output = "AT+CMGD=1,4" + Chr(13) + Chr(10)
frmMDI.comm.Output = "AT+CMGF=0" + Chr(13) + Chr(10)
Timer3.Enabled = True
Timer31.Enabled = False
Else
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "设置消息返回方式失败,等待"
'frmMDI.comm.Output = "AT+CMGF=1" + Chr(13) + Chr(10)
frmMDI.comm.Output = "AT+CNMI=2,1,0,0,1" + Chr(13) + Chr(10)
Timer31.Enabled = True
End If
End If
End Sub
'------------------------------------------------------------------------------------------------
'--------------------------------------------------------------------------------------------------
Private Sub Timer3_Timer()
If frmMDI.comm.InBufferCount > 0 Then
Timer3.Enabled = False
Call GetData2
If arr_return2(UBound(arr_return2) - 4) = Hex(Asc("O")) And arr_return2(UBound(arr_return2) - 3) = Hex(Asc("K")) Then
''MsgBox "设置消息格式(text模式)成功", vbOKOnly, "通知"
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "设置消息格式(text模式)成功"
'frmMDI.comm.Output = "AT+CMGD=1" + Chr(13) + Chr(10)
Timer4.Enabled = True
Timer3.Enabled = False
Else
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "设置消息格式(text模式)失败,等待"
frmMDI.comm.Output = "AT+CMGF=1" + Chr(13) + Chr(10)
Timer3.Enabled = True
End If
End If
End Sub
Private Sub Timer4_Timer()
Dim delString
'If frmMDI.comm.InBufferCount > 0 Then
'Call GetData3
'If arr_return4(UBound(arr_return4) - 4) = Hex(Asc("O")) And arr_return4(UBound(arr_return4) - 3) = Hex(Asc("K")) Then
' Text1.Text = Text1.Text + Chr(13) + Chr(10) + "删除消息" + delCount + "成功"
'Else
' Text1.Text = Text1.Text + Chr(13) + Chr(10) + "删除消息" + delCount + "失败"
' End If
' End If
'If delCount <= 25 Then
'frmMDI.comm.Output = "AT+CMGD=1" + Chr(13) + Chr(10)
' delCount = delCount + 1
' Else
' Timer4.Enabled = False
' delCount = 1
' Text1.Text = Text1.Text + Chr(13) + Chr(10) + "成功删除SIM卡上的所有短信"
' MsgBox "初始化结束", vbOKOnly, "通知"
' End If
If delCount < 0 Then
delString = CStr(delCount)
If delCount < 10 Then
frmMDI.comm.Output = "AT+CMGD=" + delString + Chr(13) + Chr(10)
End If
If delCount >= 10 Then
frmMDI.comm.Output = "AT+CMGD=" + Left(delString, 1) + Right(delString, 1) + Chr(13) + Chr(10)
End If
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "删除消息" + delString + "成功"
delCount = delCount + 1
delString = ""
Else
Timer4.Enabled = False
delCount = 1
Text1.Text = Text1.Text + Chr(13) + Chr(10) + "成功删除SIM卡上的所有短信"
MsgBox "初始化结束", vbOKOnly, "通知"
End If
'Timer4.Enabled = False
'If frmMDI.comm.Input > 0 Then
'Call GetData3
'Text1.Text = Text1.Text + Chr(13) + Chr(10) + receiveStr3
'End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -