tehran2009
یک شنبه 15 آذر 1388, 18:26 عصر
دوستان من خیلی وقته دنبال یک سورسی هستم که بشه USSD باهاش گرفت.
توی یک سایت خارجی یه چیزی پیدا کردم اما نمی دونم چرا کار نمی کنه.
ممنون میشم دوستان استاد چک کنن .
Sub USSD()
Set MSComm1=CreateObject("MSCOMMLib.MSComm")
MSComm1.Settings = "9600,n,8,1"
MSComm1.InputLen = 0
MSComm1.RThreshold = 5
MSComm1.CommPort = 4
MSComm1.InBufferCount = 0
MSComm1.PortOpen = True
MSComm1.Output="AT+CMGF=1" & vbcrlf
WScript.Sleep(1000)
TextCommand = "*124#"
strCommand = "AT+CUSD=1," & Chr(34) & TextCommand & Chr(34) & ",15"
MSComm1.Output=strCommand ' Send USSD Command
WScript.Sleep(10000)
strResponse=MSComm1.Input
If (InStr(strResponse, "OK") > 0) Then ' Response should be OK
MSComm1.Output=" "
WScript.Sleep(10000) ' Wait for response
strResponse2=MSComm1.Input
If (InStr(strResponse2, "+CUSD:") > 0) Then ' If USSD response is received, display text between ""
strFields = Split(strResponse2, Chr(34))
modemReply = strFields(1)
Else
modemReply = "Error strResponse2"
End If
ELSE
modemReply = "Error strResponse"
End If
MSComm1.PortOpen = False
set MSComm1=nothing
End Sub
Call USSD()
msgbox modemReply
توی یک سایت خارجی یه چیزی پیدا کردم اما نمی دونم چرا کار نمی کنه.
ممنون میشم دوستان استاد چک کنن .
Sub USSD()
Set MSComm1=CreateObject("MSCOMMLib.MSComm")
MSComm1.Settings = "9600,n,8,1"
MSComm1.InputLen = 0
MSComm1.RThreshold = 5
MSComm1.CommPort = 4
MSComm1.InBufferCount = 0
MSComm1.PortOpen = True
MSComm1.Output="AT+CMGF=1" & vbcrlf
WScript.Sleep(1000)
TextCommand = "*124#"
strCommand = "AT+CUSD=1," & Chr(34) & TextCommand & Chr(34) & ",15"
MSComm1.Output=strCommand ' Send USSD Command
WScript.Sleep(10000)
strResponse=MSComm1.Input
If (InStr(strResponse, "OK") > 0) Then ' Response should be OK
MSComm1.Output=" "
WScript.Sleep(10000) ' Wait for response
strResponse2=MSComm1.Input
If (InStr(strResponse2, "+CUSD:") > 0) Then ' If USSD response is received, display text between ""
strFields = Split(strResponse2, Chr(34))
modemReply = strFields(1)
Else
modemReply = "Error strResponse2"
End If
ELSE
modemReply = "Error strResponse"
End If
MSComm1.PortOpen = False
set MSComm1=nothing
End Sub
Call USSD()
msgbox modemReply