دوستان کسی میدونه چجور میتونم تو بیسیک با گوشی یا سیم کارت ریدر ارتباط برقرار کرد و بتوان اس ام اس ارسال کرد.مثل اکثر برنامه های این مدلی؟؟؟
بستگی به مدل و مشخصات فنی اون Reader داره، یک کد ممکنه روی بعضی مدل ها کار کنه و روی سایر مدل ها کار نکنه.
کد رو باید روی همون سیستم امتحان کنید و اگه لازم شد بر اساس Card Reader تغییر دهید، کسی نمی تونه از راه دور
اینکار رو براتون انجام بده.
در محیط ویژوال بیسیک ترکیب کلیدی Ctrl + T رو فشار دهید و در لیست Control ها گزینه Microsoft Comm Control
را تیک بزنید و OK کنید. سپس یک عدد کنترل MSComm (آیکون تلفن) را روی فرم قرار دهید.
کد زیر پیغام message رو به از طریق Port ئه COM3 که در CommPort مشخص شده به شماره موبایل telNumber
ارسال می کنه :
کد:
Private Sub Form_Load()
Dim message As String, telNumber As String
[COLOR="Blue"] telNumber = "123456789"[/COLOR]
[COLOR="Blue"] message = "Your message."[/COLOR]
[COLOR="Blue"] MSComm1.CommPort = 3[/COLOR]
MSComm1.Settings = "19200,N,8,1"
MSComm1.DTREnable = True
MSComm1.RTSEnable = True
MSComm1.Handshaking = comRTS
MSComm1.PortOpen = True
MSComm1.Output = "AT" & vbCrLf
MSComm1.Output = "AT+CMGF=1" & vbCrLf
MSComm1.Output = "AT+CMGS=" & telNumber & vbCrLf
MSComm1.Output = "AT+CMGS=" & message & Chr$(26) & vbCrLf
End Sub
تعریف دو متغیر برای متن پیغام و شماره موبایل :
کد:
Dim message As String, telNumber As String
مشخص کردن شماره موبایل :
مشخص کردن متن پیغام :
کد:
message = "Your message."
مشخص کردن شماره پورت COM ای که سخت افزار با آن ارتباط برقرار می کند، به مشخصات درایور
کارت مورد نظر در Device Manager ویندوز مراجعه کنید :
تنظیمات Baud Rate و Parity و Data Bit و Stop Bit پورت مورد نظر :
کد:
MSComm1.Settings = "19200,N,8,1"
تنظیمات DTR و RTS و Hand Shaking پورت مورد نظر :
کد:
MSComm1.DTREnable = True
MSComm1.RTSEnable = True
MSComm1.Handshaking = comRTS
باز کردن پورت مورد نظر :
ارسال کردن فرمان AT به مودم :
کد:
MSComm1.Output = "AT" & vbCrLf
ارسال کردن فرمت Message که متنی (کد 1) است :
کد:
MSComm1.Output = "AT+CMGF=1" & vbCrLf
ارسال کردن شماره موبایل مقصد :
کد:
MSComm1.Output = "AT+CMGS=" & telNumber & vbCrLf
ارسال کردن متن پیغام :
کد:
MSComm1.Output = "AT+CMGS=" & message & Chr$(26) & vbCrLf