📄 smsdef.bas
字号:
Attribute VB_Name = "SMSDef"
Option Explicit
Public Type SMSReportStruct
index As Long '//短消息编号:index,从0开始递增
Msg(0 To 255) As Byte '//短信内容
Success As Long '是否发送成功 0为失败,非0为成功
PhoneNo(0 To 31) As Byte ' //目标手机号码
End Type
Public Type SMSMessageStruct
Msg(0 To 255) As Byte '//短信内容
PhoneNo(0 To 31) As Byte '//对方手机号码
ReceTime(0 To 31) As Byte '//接收时间
End Type
'启动服务,打开串口,初始化Modem, 0为失败,非0为成功
'校验位, EvenParity :0,MarkParity:1,NoParity:2,OddParity:3,SpaceParity,4
'停止位 OneStopBit 0,OnePointFiveStopBits:1,TwoStopBits 2
'流控:NoFlowControl:0, CtsRtsFlowControl:1, CtsDtrFlowControl:2, DsrRtsFlowControl:3, DsrDtrFlowControl:4, XonXoffFlowControl:5
'最后一个参数csca为短信中心号码,如果直接用卡内已存的短信中心号码则用"card"(小写)
Public Declare Function SMSStartService Lib "SMSDLL.dll" (ByVal nPort As Long, ByVal BaudRate As Long, ByVal Parity As Integer, ByVal DataBits As Integer, ByVal StopBits As Integer, ByVal FlowControl As Integer, ByVal csca As String) As Long
'//停止服务,并关闭串口,0为失败,非0为成功
Public Declare Function SMSStopSerice Lib "SMSDLL.dll" () As Long
'//发送短消息,返回短消息编号:index,从0开始递增,该函数不会阻塞,立既返回,请用函数SMSQuery(DWORD index)来查询是否发送成功
Public Declare Function SMSSendMessage Lib "SMSDLL.dll" (ByVal Msg As String, ByVal phone As String) As Long
'//报告短信发送壮态(成功与否)0为有报告,非0为无
Public Declare Function SMSReport Lib "SMSDLL.dll" (ByRef srs As SMSReportStruct) As Long
'查询指定序号的短信是否发送成功(该序号由SMSSendMessage返回)
'返回 0 表示发送失败
' 1 表示发送成功
' -1 表示没有查询到该序号的短信,可能仍在发送中。
Public Declare Function SMSQuery Lib "SMSDLL.dll" (ByVal index As Long) As Long
'//接收短信,0为有短信,非0为无
Public Declare Function SMSGetNextMessage Lib "SMSDLL.dll" (ByRef smg As SMSMessageStruct) As Long
'//返回错误内容的长度
Public Declare Function SMSGetLastError Lib "SMSDLL.dll" (ByVal err As String) As Long
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -