PDA

View Full Version : مشکل این سورس کجاست ؟؟؟



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

sg.programmer
دوشنبه 16 آذر 1388, 06:47 صبح
شما دارید روی چه سخت افزاری ارساال می کنید
موبایل یا GSMModem

اگه موبایل باشه باید این تغییر پیدا کنه
MSComm1.Output="AT+CMGF=1" & vbcrlf
MSComm1.Output="AT+CMGF=0" & vbcrlf

بعد بسته به گوشی تون
آیا از USB و یا بلوتوس نرخ ارسال تغییر می کنه
MSComm1.Settings = "9600,n,8,1"
MSComm1.Settings = "BoudRate,n,8,1"


فعلا اینها را رفع کن





ِ

tehran2009
دوشنبه 16 آذر 1388, 09:19 صبح
من بوسیله گوشی این کارو می خوام انجام بدم.
این جاهای کد اررور می ده ..



Set MSComm1 = CreateObject("MSCOMMLib.MSComm")


و



Set MSComm1 = Nothing

ممنون میشم با یک پروژه وی بی برام این کارو انجام بدین.
راستی پیغام خصوصیتونو هم چک کنید. :بوس: