PDA

View Full Version : مشکل در ارسال kylixsms



amir_port
شنبه 23 دی 1391, 12:55 عصر
سلام به همه دوستان
من یک کامپوننت kylix دارم که هیچ مشکلی نداره ولی وقتی میخوام پیام بفرستم در خط ارسال برنامم به مدت 3 ثانیه استپ میشه و بقیه قسمتهای برنامه از کار می افته . قسمت ارسال را هم در Thread نوشتم ولی باز هم در آنجا برنامه وایمیسته . برام مهمه که برنامه اصلا استپ نداشته باشه . اگه میشه یکی کمک کنه .
ممنون

amir_port
شنبه 23 دی 1391, 13:37 عصر
اینم برنامه تست :
Imports System.Threading
Public Class Form1
Private gsm_thread As Thread = Nothing
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
KylixSMS.AutoDeleteNewSMS = 1
KylixSMS.AutoDeleteAllReport = 1

KylixSMS.RegisterName = "0000000000"
KylixSMS.RegisterCode = "0000000000000000000000000000000000000000"

KylixSMS.NeedLog = 1 'If you have any problem please set the value to 1, and send us the log file "C:\KylixSMS.LOG".
KylixSMS.PINCode = ""
KylixSMS.ConnectionMode = 1
KylixSMS.ConnectionProtocol = 1
KylixSMS.ConnectionParameter = "Com2,57600"
KylixSMS.AutoDeleteNewSMS = 1
KylixSMS.IsConcatenatedSMS = 1
KylixSMS.AutoDeleteAllReport = 1
If KylixSMS.Connect < 1 Then
KylixSMS.GetLastError(1)
End If
End Sub
Dim cnt As Long
Dim kk As Long
Private Sub send_to_gsm()
Dim Reference As Integer
Application.DoEvents()
KylixSMS.RequestDeliveryReport = 0
KylixSMS.SendTimeout = 28
KylixSMS.SendRetryTimes = 1
KylixSMS.SendInterval = 1
Reference = KylixSMS.SendSMS("09159793281", "OK")
' If Reference < 1 Then
' KylixSMS.GetLastError(1)
' Else
' MsgBox("Successful." & vbCrLf & "Reference: " & Reference)
' End If
End Sub

Private Sub send_to_test()
Dim i As Long
kk = 0
For i = 0 To 1000000000
kk += 1
Next
End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
cnt += 1
Label1.Text = cnt.ToString
Label2.Text = kk.ToString
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
gsm_thread = New Thread(New ThreadStart(AddressOf send_to_gsm))
gsm_thread.IsBackground = False
gsm_thread.Start()
End Sub
End Class

amir_port
شنبه 23 دی 1391, 15:19 عصر
کسی نیست کمک بده به من ؟

amir_port
شنبه 23 دی 1391, 18:56 عصر
کمک کمککککککککککک

sehm67
شنبه 23 دی 1391, 19:07 عصر
سلام

لطفا کد ها رو داخل کد تگ وارد کنید

نمونه برنامه رو بزارید تست کنیم تا مشکل زودتر حل بشه !

نحوه اتصالتون به چه صورته؟

به نظر من از Mcore استفاده کنید ( پیشنهاد )

amir_port
شنبه 23 دی 1391, 19:30 عصر
http://www.4shared.com/rar/iynmt7te/WindowsApplication2.html

amir_port
شنبه 23 دی 1391, 19:33 عصر
Imports System.Threading
Public Class Form1
Dim cnt As Long
Dim kk As Long
Private gsm_thread As Thread = Nothing

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
KylixSMS.AutoDeleteNewSMS = 1
KylixSMS.AutoDeleteAllReport = 1

KylixSMS.RegisterName = "6B796C6978736F66742E636F6D"
KylixSMS.RegisterCode = "766D8DF9E7ADE95B888A300F228751B96639FBFD2D3DDFCF23 6E50AF278C358F"

KylixSMS.NeedLog = 1 'If you have any problem please set the value to 1, and send us the log file "C:\KylixSMS.LOG".
KylixSMS.PINCode = ""
KylixSMS.ConnectionMode = 1
KylixSMS.ConnectionProtocol = 1
KylixSMS.ConnectionParameter = "Com2,57600"
KylixSMS.AutoDeleteNewSMS = 1
KylixSMS.IsConcatenatedSMS = 1
KylixSMS.AutoDeleteAllReport = 1
If KylixSMS.Connect < 1 Then
KylixSMS.GetLastError(1)
End If
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
gsm_thread = New Thread(New ThreadStart(AddressOf send_to_gsm))
gsm_thread.IsBackground = False
gsm_thread.Start()
End Sub

Private Sub send_to_gsm()
Dim Reference As Integer
Application.DoEvents()
KylixSMS.RequestDeliveryReport = 0
KylixSMS.SendTimeout = 28
KylixSMS.SendRetryTimes = 1
KylixSMS.SendInterval = 1
KylixSMS.IsFlashSMS = 1
Reference = KylixSMS.SendSMS("09159793281", "OK")
' If Reference < 1 Then
' KylixSMS.GetLastError(1)
' Else
' MsgBox("Successful." & vbCrLf & "Reference: " & Reference)
' End If
End Sub

Private Sub send_to_test()
Dim i As Long
kk = 0
For i = 0 To 1000000000
kk += 1
Next
End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
cnt += 1
Label1.Text = cnt.ToString
Label2.Text = kk.ToString
End Sub
End Class