⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmxtlj.frm

📁 这个软件可以通过短信猫收发短信。可以用做短信平台。功能十分强大!
💻 FRM
字号:
VERSION 5.00
Object = "{648A5603-2C6E-101B-82B6-000000000014}#1.1#0"; "MSCOMM32.OCX"
Begin VB.Form FrmCSH 
   BorderStyle     =   3  'Fixed Dialog
   Caption         =   "系统连接设置"
   ClientHeight    =   3105
   ClientLeft      =   45
   ClientTop       =   330
   ClientWidth     =   4650
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   MinButton       =   0   'False
   ScaleHeight     =   3105
   ScaleWidth      =   4650
   ShowInTaskbar   =   0   'False
   StartUpPosition =   3  '窗口缺省
   Begin VB.TextBox Text1 
      Height          =   2415
      Left            =   5280
      TabIndex        =   4
      Text            =   "Text1"
      Top             =   1080
      Width           =   2415
   End
   Begin MSCommLib.MSComm MSComm1 
      Left            =   3840
      Top             =   120
      _ExtentX        =   1005
      _ExtentY        =   1005
      _Version        =   393216
      DTREnable       =   -1  'True
   End
   Begin VB.CommandButton QuitCommand 
      Caption         =   "退出系统"
      Height          =   375
      Left            =   1440
      TabIndex        =   3
      Top             =   2160
      Width           =   1575
   End
   Begin VB.CommandButton RunCommand 
      Caption         =   "系统连接与初始化"
      Height          =   375
      Left            =   1440
      TabIndex        =   2
      Top             =   1440
      Width           =   1575
   End
   Begin VB.Timer Timer2 
      Enabled         =   0   'False
      Interval        =   5000
      Left            =   360
      Top             =   1320
   End
   Begin VB.Timer Timer1 
      Enabled         =   0   'False
      Interval        =   800
      Left            =   360
      Top             =   720
   End
   Begin VB.ComboBox Combo1 
      Height          =   300
      Left            =   1320
      TabIndex        =   1
      Top             =   600
      Width           =   1815
   End
   Begin VB.Label Label1 
      AutoSize        =   -1  'True
      Caption         =   "请选择您使用的端口:"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   10.5
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   210
      Left            =   120
      TabIndex        =   0
      Top             =   240
      Width           =   2100
   End
End
Attribute VB_Name = "FrmCSH"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim IntNo As Integer
Dim arr_Return() As Variant
Private Sub Combo1_Click()
On Error GoTo err
PortItem = CInt(Combo1.Text)  '保存串行端口号
MSComm1.CommPort = PortItem
MSComm1.PortOpen = True    '打开所选择的端口号
Exit Sub
err:
    MsgBox "对不起,您选择的端口号已经被打开,请选择别的端口", vbOKOnly, "通知"
End Sub

Private Sub Form_load()
Dim aa As Integer
For aa = 1 To 10
   Combo1.AddItem aa
Next aa
IntNo = 0
End Sub

Private Sub QuitCommand_Click()
If MSComm1.PortOpen = True Then
    MSComm1.PortOpen = False
End If
Unload Me
End
End Sub

Private Sub RunCommand_Click()
Timer2.Enabled = True   'Timer2控件开始计时
If MSComm1.PortOpen = False Then         '如果端口没有打开则打开端口
   MSComm1.CommPort = PortItem   '选择端口号
   MSComm1.PortOpen = True   '打开端口
   Timer2.Enabled = True   'Timer2控件开始计时
End If
   MSComm1.Output = "AT" + Chr(13) + Chr(10) '发送AT指令,GSM模块返回OK
   Timer1.Enabled = True    'Timer1开始计时
End Sub

Private Sub Timer1_Timer()
If MSComm1.InBufferCount > 0 Then
     Timer1.Enabled = False    'Timer1停止计时
     Call GetData        '读取串口发来的短消息,存放到arr_return()数组中   16进制数
     
     If IntNo = 0 Then   'IntNo存放当前删除的短消息数量,初始值为0
        If arr_Return(UBound(arr_Return) - 4) = Hex(Asc("O")) And arr_Return(UBound(arr_Return) - 3) = Hex(Asc("k")) Then  '判断是否接收到“Ok”字符串,接收到证明连接正常
          MSComm1.Output = "AT+CMGF=1" + Chr(13) + Chr(10) '使用AT指令设置短消息的格式为Text类型
          IntNo = IntNo + 1
          Timer1.Enabled = True
        Else
          Timer1.Enabled = True
        End If
     Else
        If IntNo = 16 Then   '如果IntNo计数达到16,则测试完毕
            MsgBox "测试完毕:初始化已经结束!", vbOKOnly, "通知"
            Unload Me
            FrmMain.Show    '打开主窗口
        Else
           If arr_Return(UBound(arr_Return) - 4) = Hex(Asc("O")) And arr_Return(UBound(arr_Return) - 3) = Hex(Asc("K")) Then
              If IntNo < 10 Then  '按删除短消息的类型分为两种,大于10和小于10
                MSComm1.Output = "AT+CMGD=" + Chr(IntNo + 48) + Chr(13) + Chr(10) '删除短消息
                IntNo = IntNo + 1
                Timer1.Enabled = True
              Else
                MSComm1.Output = "AT+CMGD=1" + Chr(IntNo + 38) + Chr(13) + Chr(10)
                IntNo = IntNo + 1
                Text.Text = IntNo
                Timer1.Enabled = True
             End If
          End If
        End If
     End If
End If
End Sub
Private Function GetData()
Dim Count As Integer
Count = 0
MSComm1.InputLen = 1  '设置mscomm1的InputLen属性为1 ,读取缓冲区时按字节读取
While MSComm1.InBufferCount > 0   '循环读取缓冲区中的数据
    ReDim preserve_return(Count + 1) '动态定义数组的上限     '重新定义数组
    arr_Return(Count) = Hex(Asc(MSComm1.Input))
    Count = Count + 1
Wend
End Function

Private Sub Timer2_Timer()
Dim IntChk As String
If IntNo <> "16" Then  '判断短消息是否删除完毕:如果Int<>"16",表示还没有初始化完毕,重新初始化
   Timer2.Enabled = False
   IntChk = MsgBox("对不起,初始化发生错误,是否重新初始化?", vbOKCancel, "通知")
   If IntChk = vbOK Then
       IntNo = 0
       Timer2.Enabled = True
       Call RunCommand_Click
   Else
       Unload Me
       FrmMain.Show
   End If
End If
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -