VERSION 5.00 Begin VB.Form Form1 Caption = "梦网网关动态库演示程序" ClientHeight = 7875 ClientLeft = 60 ClientTop = 345 ClientWidth = 6720 FillColor = &H00FFFFFF& LinkTopic = "Form1" ScaleHeight = 7875 ScaleWidth = 6720 StartUpPosition = 3 'Windows Default Begin VB.TextBox TxtDetail Height = 975 Left = 120 MultiLine = -1 'True ScrollBars = 2 'Vertical TabIndex = 40 Top = 6840 Width = 6495 End Begin VB.Frame Frame5 Caption = "提示信息" Height = 1575 Left = 105 TabIndex = 38 Top = 5160 Width = 6495 Begin VB.ListBox LstInfo Height = 1230 ItemData = "Form1.frx":0000 Left = 60 List = "Form1.frx":0002 TabIndex = 39 Top = 225 Width = 6330 End End Begin VB.Frame Frame4 Caption = "帐户管理" Height = 690 Left = 105 TabIndex = 32 Top = 4440 Width = 6495 Begin VB.CommandButton CmdUsed Caption = "查询使用" Height = 345 Left = 195 TabIndex = 35 Top = 240 Width = 1230 End Begin VB.CommandButton CmdChangePwd Caption = "修改密码" Height = 345 Left = 3105 TabIndex = 34 Top = 240 Width = 1230 End Begin VB.CommandButton CmdLeft Caption = "查询余额" Height = 345 Left = 1635 TabIndex = 33 Top = 240 Width = 1230 End Begin VB.TextBox TxtNewPwd Height = 375 Left = 5340 TabIndex = 36 Top = 225 Width = 975 End Begin VB.Label Label11 Caption = "新密码:" Height = 255 Left = 4515 TabIndex = 37 Top = 300 Width = 795 End End Begin VB.Frame Frame3 Caption = "信息操作" Height = 2490 Left = 105 TabIndex = 16 Top = 1890 Width = 6510 Begin VB.CommandButton CmdReprot Caption = "状态报告" Enabled = 0 'False Height = 375 Left = 4950 TabIndex = 31 Top = 2025 Width = 1440 End Begin VB.CommandButton CmdRecv Caption = "接收信息" Enabled = 0 'False Height = 375 Left = 4950 TabIndex = 30 Top = 1575 Width = 1440 End Begin VB.CommandButton CmdSend Caption = "单向信息" Height = 375 Left = 4950 TabIndex = 29 Top = 1125 Width = 1440 End Begin VB.TextBox TxtMsg Height = 1305 Left = 885 MultiLine = -1 'True ScrollBars = 2 'Vertical TabIndex = 28 Text = "Form1.frx":0004 Top = 1080 Width = 3585 End Begin VB.TextBox TxtCount Height = 375 Left = 5415 TabIndex = 25 Top = 630 Width = 975 End Begin VB.TextBox TxtLinkid Height = 375 Left = 4545 TabIndex = 23 Top = 180 Width = 1860 End Begin VB.TextBox TxtFee Height = 375 Left = 3075 TabIndex = 21 Top = 180 Width = 795 End Begin VB.TextBox TxtSport Height = 375 Left = 885 TabIndex = 18 Top = 180 Width = 1350 End Begin VB.TextBox TxtPhone Height = 375 Left = 885 TabIndex = 17 Text = "13534***346" Top = 615 Width = 3585 End Begin VB.Label Label10 Caption = "短信内容:" Height = 225 Left = 90 TabIndex = 27 Top = 1050 Width = 870 End Begin VB.Label Label9 Caption = "手机个数:" Height = 255 Left = 4590 TabIndex = 26 Top = 690 Width = 795 End Begin VB.Label Label8 Caption = "匹配码:" Height = 255 Left = 3945 TabIndex = 24 Top = 240 Width = 585 End Begin VB.Label Label7 Caption = "费率代码:" Height = 255 Left = 2295 TabIndex = 22 Top = 270 Width = 765 End Begin VB.Label Label1 Caption = "端口号码:" Height = 255 Left = 90 TabIndex = 20 Top = 240 Width = 795 End Begin VB.Label Label2 Caption = "手机号码:" Height = 255 Left = 75 TabIndex = 19 Top = 660 Width = 870 End End Begin VB.Frame Frame2 Caption = "帐户登陆" Height = 1200 Left = 105 TabIndex = 4 Top = 675 Width = 6510 Begin VB.CommandButton CdTest Caption = "测试连接" Height = 375 Left = 4815 TabIndex = 15 Top = 675 Width = 1590 End Begin VB.CommandButton CdDisConn Caption = "断开" Enabled = 0 'False Height = 375 Left = 5670 TabIndex = 14 Top = 180 Width = 735 End Begin VB.CommandButton CdConn Caption = "连接" Default = -1 'True Height = 375 Left = 4815 TabIndex = 13 Top = 180 Width = 735 End Begin VB.TextBox TxAccount Height = 375 Left = 765 MaxLength = 30 TabIndex = 10 Text = "13600000412" Top = 660 Width = 2055 End Begin VB.TextBox TxPassword Height = 375 IMEMode = 3 'DISABLE Left = 3615 PasswordChar = "*" TabIndex = 9 Text = "800000" Top = 660 Width = 840 End Begin VB.TextBox TxServer Height = 375 Left = 765 MaxLength = 30 TabIndex = 6 Text = "61.242.89.115" Top = 240 Width = 2055 End Begin VB.TextBox TxPort Height = 375 IMEMode = 3 'DISABLE Left = 3615 TabIndex = 5 Text = "8018" Top = 240 Width = 840 End Begin VB.Label Label6 Caption = "帐号:" Height = 255 Left = 120 TabIndex = 12 Top = 735 Width = 555 End Begin VB.Label Label5 Caption = "密码:" Height = 255 Left = 3060 TabIndex = 11 Top = 735 Width = 525 End Begin VB.Label Label3 Caption = "服务器:" Height = 255 Left = 120 TabIndex = 8 Top = 315 Width = 615 End Begin VB.Label Label4 Caption = "端口:" Height = 255 Left = 3060 TabIndex = 7 Top = 315 Width = 525 End End Begin VB.Frame Frame1 Caption = "帐户类型" Height = 615 Left = 105 TabIndex = 0 Top = 15 Width = 6525 Begin VB.CheckBox CkKf Caption = "客服双向帐户" Height = 255 Left = 4830 TabIndex = 3 Top = 225 Width = 1545 End Begin VB.CheckBox CkVas Caption = "增值双向帐户" Height = 255 Left = 2325 TabIndex = 2 Top = 240 Width = 1770 End Begin VB.CheckBox CkSingle Caption = "单向帐户" Height = 255 Left = 240 TabIndex = 1 Top = 240 Value = 1 'Checked Width = 1710 End End End Attribute VB_Name = "Form1" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Private Declare Function MongateConnect Lib "MWGateway.dll" (ByVal serverip As String, _ ByVal port As Integer, ByVal account As String, ByVal pwd As String) As Integer Private Declare Function MongateSendSms Lib "MWGateway.dll" (ByVal socket As Integer, _ ByVal mobi As String, ByVal msg As String) As Integer Private Declare Function MongateTestConn Lib "MWGateway.dll" (ByVal socket As Integer) As Integer Private Declare Function MongateQueryBalance Lib "MWGateway.dll" (ByVal socket As Integer) As Long Private Declare Function MongateQueryUsed Lib "MWGateway.dll" (ByVal socket As Integer) As Integer Private Declare Function MongateRecharge Lib "MWGateway.dll" (ByVal socket As Integer, _ ByVal cardno As String, ByVal cardpwd As String) As Integer Private Declare Function MongateChangePwd Lib "MWGateway.dll" (ByVal socket As Integer, _ ByVal account As String, ByVal oldpwd As String, ByVal newpwd As String) As Integer Private Declare Sub MongateDisconnect Lib "MWGateway.dll" (ByVal socket As Integer) Private Declare Function MongateVasGetSms Lib "MWGateway.dll" (ByVal socket As Integer, _ ByRef recvmsg As Byte) As Integer Private Declare Function MongateVasSendSms Lib "MWGateway.dll" (ByVal socket As Integer, _ ByVal feecode As String, ByVal spno As String, ByVal opercode As String, _ ByVal linkid As String, ByVal mobis As String, ByVal msg As String, _ ByVal icount As Long) As Integer Private Declare Function MongateCsGetSms Lib "MWGateway.dll" (ByVal socket As Integer, _ ByRef statereport As Byte) As Integer Private Declare Function MongateCsSendSms Lib "MWGateway.dll" (ByVal socket As Integer, _ ByVal mobi As String, ByVal note As String, ByVal icount As Long, _ ByRef msgno As Byte) As Integer Private Declare Function MongateCsGetStatusReport Lib "MWGateway.dll" _ (ByVal socket As Integer, ByRef recvmsg As Byte) As Integer Dim clientsock As Long Private Sub CdConn_Click() If (clientsock <= 0) Then clientsock = MongateConnect(Trim(TxServer.Text), CInt(Trim(TxPort.Text)), _ Trim(TxAccount.Text), Trim(TxPassword.Text)) If (clientsock > 0) Then LstInfo.AddItem ("连接成功,句柄:" & clientsock) CdConn.Enabled = False CdDisConn.Enabled = True Else LstInfo.AddItem ("连接失败,返回:" & clientsock) End If End If End Sub Private Sub CdDisConn_Click() If (clientsock > 0) Then MongateDisconnect clientsock LstInfo.AddItem ("断开连接,句柄:" + CStr(clientsock)) clientsock = 0 CdConn.Enabled = True CdDisConn.Enabled = False End If End Sub Private Sub CdTest_Click() If Noconn Then Exit Sub Dim retu_state As Integer If (clientsock > 0) Then retu_state = MongateTestConn(clientsock) If retu_state = 1 Then LstInfo.AddItem ("测试连接成功") Else LstInfo.AddItem ("测试连接失败") clientsock = 0 CdConn.Enabled = True CdDisConn.Enabled = False End If End If End Sub Function Noconn() As Boolean Noconn = False If clientsock <= 0 Then LstInfo.AddItem ("没有连接到任何服务器!!!") Noconn = True End If End Function Private Sub CkKf_Click() CkClick 2 End Sub Private Sub CkSingle_Click() CkClick 0 End Sub Private Sub CkVas_Click() CkClick 1 End Sub Private Sub CkClick(ByVal seltype As Integer) If seltype = 0 Then If CkSingle.Value Then CkVas.Value = 0 CkKf.Value = 0 End If ElseIf seltype = 1 Then If CkVas.Value Then CkSingle.Value = 0 CkKf.Value = 0 End If Else If CkKf.Value Then CkVas.Value = 0 CkSingle.Value = 0 End If End If Showme TxtSport, CkVas.Value Showme TxtFee, CkVas.Value Showme TxtLinkid, CkVas.Value Showme TxtCount, (CkVas.Value Or CkKf.Value) CmdRecv.Enabled = CkVas.Value Or CkKf.Value CmdReprot.Enabled = CkKf.Value If CkVas.Value Then CmdSend.Caption = "增值信息" ElseIf CkKf.Value Then CmdSend.Caption = "客服信息" Else CmdSend.Caption = "单向信息" End If End Sub Private Sub Showme(edtmp As TextBox, flag As Boolean) edtmp.Enabled = flag If flag Then edtmp.BackColor = &H80000005 Else edtmp.BackColor = &H8000000F End If End Sub Private Sub CmdChangePwd_Click() If Noconn Then Exit Sub Dim myfee As Integer Dim myip As String, myport As String If (clientsock > 0) Then myfee = MongateChangePwd(clientsock, Trim(TxAccount.Text), _ Trim(TxPassword.Text), Trim(TxtNewPwd.Text)) If (myfee = 1) Then LstInfo.AddItem ("修改密码成功,请记住新密码") Else LstInfo.AddItem ("修改密码失败") End If End If End Sub Private Sub CmdLeft_Click() If Noconn Then Exit Sub Dim myfee As Long Dim myip As String, myport As String If (clientsock > 0) Then myfee = MongateQueryBalance(clientsock) If (myfee >= 0) Then LstInfo.AddItem ("查询余额成功" & myfee) Else LstInfo.AddItem ("查询余额失败" & myfee) End If End If End Sub Private Sub CmdRecv_Click() If Noconn Then Exit Sub Dim recv(254, 500) As Byte Dim buf(255) As Byte Dim Str As String Dim num As Integer Dim i As Integer Dim k As Integer If (clientsock > 0) Then If CkKf.Value Then num = MongateCsGetSms(clientsock, recv(0, 0)) Else num = MongateVasGetSms(clientsock, recv(0, 0)) End If If (num > 0) Then For i = 0 To num - 1 For k = 0 To 254 buf(k) = recv(k, i) If (buf(k) = 0) Then Exit For End If Next Str = StrConv(buf(), vbUnicode) LstInfo.AddItem ("接收信息:" & Str) Next Else LstInfo.AddItem ("接收无信息") End If End If End Sub Private Sub CmdReprot_Click() If Noconn Then Exit Sub Dim recv(254, 500) As Byte Dim buf(255) As Byte Dim Str As String Dim num As Integer Dim i As Integer Dim k As Integer If (clientsock > 0) Then num = MongateCsGetStatusReport(clientsock, recv(0, 0)) If (num > 0) Then For i = 0 To num - 1 For k = 0 To 254 buf(k) = recv(k, i) If (buf(k) = 0) Then Exit For End If Next Str = StrConv(buf(), vbUnicode) LstInfo.AddItem ("状态报告:" & Str) Next Else LstInfo.AddItem ("无状态报告") End If End If End Sub Private Sub CmdSend_Click() If Noconn Then Exit Sub Dim retu_state As Long, icount As Integer Dim retu_msgnumber(40) As Byte If Noconn Then Exit Sub If Trim(TxtCount.Text) = "" Then icount = 1 Else icount = CInt(TxtCount.Text) End If If CkVas.Value Then '//增值信息 retu_state = MongateVasSendSms(clientsock, Trim(TxtFee.Text), _ Trim(TxtSport.Text), "00********", Trim(TxtLinkid.Text), _ Trim(TxtPhone.Text), Trim(TxtMsg.Text), icount) If (retu_state = 1) Then LstInfo.AddItem ("发送增值信息成功!") Else LstInfo.AddItem ("发送增值信息失败!返回:" + CStr(retu_state)) End If ElseIf CkKf.Value Then '//客服信息 retu_state = MongateCsSendSms(clientsock, Trim(TxtPhone.Text), _ Trim(TxtMsg.Text), icount, retu_msgnumber(0)) If (retu_state = 1) Then LstInfo.AddItem ("发送客服信息成功!信息编号:" + StrConv(retu_msgnumber(), vbUnicode)) Else LstInfo.AddItem ("发送客服信息失败!返回:" + CStr(retu_state)) End If Else '单向信息 retu_state = MongateSendSms(clientsock, TxtPhone.Text, TxtMsg.Text) If (retu_state = 1) Then LstInfo.AddItem ("发送单向信息成功") Else LstInfo.AddItem ("发送单向信息失败!返回:" + CStr(retu_state)) End If End If End Sub Private Sub CmdUsed_Click() If Noconn Then Exit Sub Dim myfee As Integer If (clientsock > 0) Then myfee = MongateQueryUsed(clientsock) If (myfee >= 0) Then LstInfo.AddItem ("查询使用成功" & myfee) Else LstInfo.AddItem ("查询使用失败" & myfee) End If End If End Sub Private Sub Form_Load() clientsock = 0 CkClick 0 End Sub Private Sub LstInfo_Click() TxtDetail.Text = LstInfo.Text End Sub