منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
ممكن مساعدة في ارسال رسالة بي لغة العربية - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : ممكن مساعدة في ارسال رسالة بي لغة العربية (/showthread.php?tid=26064)

الصفحات: 1 2 3


ممكن مساعدة في ارسال رسالة بي لغة العربية - الزوي - 10-08-18

عند ارسال رسالة الي الجوال تظهر  علي شكل ؟؟؟؟؟؟؟؟؟؟؟
كود :
       Dim message As String
       message = RichTextBox1.Text
       SerialPort1.Open()
       If SerialPort1.IsOpen() Then
           SerialPort1.Write("AT" & vbCrLf)
           SerialPort1.Write("AT+CMGF=1" & vbCrLf)
           SerialPort1.Write("AT+CMGS=" & Chr(34) & TextBox1.Text & Chr(34) & vbCrLf)
           SerialPort1.Write(message & Chr(26))
           MsgBox("يتم الارسال")
       Else
           MsgBox("لم يتم")
       End If



RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - حريف برمجة - 10-08-18

جرب استبدال السطر التالي :


كود :
message = RichTextBox1.Text


بهذا :


كود :
message = Encoding.UTF8.GetString(RichTextBox1.Text)



RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - الزوي - 10-08-18

يوجد error 
        Dim message As String
        message = Encoding.UTF8.GetString(RichTextBox1.Text)
        SerialPort1.Open()
        If SerialPort1.IsOpen() Then
            SerialPort1.Write("AT" & vbCrLf)
            SerialPort1.Write("AT+CMGF=1" & vbCrLf)
            SerialPort1.Write("AT+CMGS=" & Chr(34) & TextBox1.Text & Chr(34) & vbCrLf)
            SerialPort1.Write(message & Chr(26))
            MsgBox("يتم الارسال")
        Else
            MsgBox("لم يتم")
        End If
    End Sub


RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - Null - 10-08-18

تعدل على الاخ حريف البرمجة
كود :
Message = Encoding.Unicode.GetString(Encoding.UTF8.GetBytes(RichTextBox1.Text))
جرب تغير في الترميز UTF8 وUnicode و التبديل بينهم


RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - الزوي - 11-08-18

البرنامج لا يرسل 
كود :
       Dim message As String
       message = Encoding.Unicode.GetString(Encoding.UTF8.GetBytes(RichTextBox1.Text))
       SerialPort1.Open()
       If SerialPort1.IsOpen() Then
           SerialPort1.Write("AT" & vbCrLf)
           SerialPort1.Write("AT+CMGF=1" & vbCrLf)
           SerialPort1.Write("AT+CMGS=" & Chr(34) & TextBox1.Text & Chr(34) & vbCrLf)
           SerialPort1.Write(message & Chr(26))

           MsgBox("يتم الارسال")
       Else
           MsgBox("لم يتم")
       End If
   End Sub



RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - Null - 11-08-18

جرب UTF7 بدلا من Unicode


مش فاهم ردك
(11-08-18, 12:18 AM)الزوي كتب : البرنامج لا يرسل 



RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - الزوي - 11-08-18

انت شوف البرنامج  لا يعمل ارسال الرسالة كيف قبل 
كود :
Imports System.IO.Ports
Imports System.Text

Public Class Form1
   Dim SerialPort1 As New System.IO.Ports.SerialPort()
   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       SerialPort1.PortName = "COM4"
       SerialPort1.BaudRate = 9600
       SerialPort1.Parity = Parity.None
       SerialPort1.StopBits = StopBits.One
       SerialPort1.DataBits = 8
       SerialPort1.Handshake = Handshake.RequestToSend
       SerialPort1.DtrEnable = True
       SerialPort1.RtsEnable = True
       SerialPort1.NewLine = vbCrLf

   End Sub

   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

       Dim message As String
       message = Encoding.UTF7.GetString(Encoding.UTF8.GetBytes(RichTextBox1.Text))
       SerialPort1.Open()
       If SerialPort1.IsOpen() Then
           SerialPort1.Write("AT" & vbCrLf)
           SerialPort1.Write("AT+CMGF=1" & vbCrLf)
           SerialPort1.Write("AT+CMGS=" & Chr(34) & TextBox1.Text & Chr(34) & vbCrLf)
           SerialPort1.Write(message & Chr(26))

           MsgBox("يتم الارسال")
       Else
           MsgBox("لم يتم")
       End If
   End Sub


End Class



RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - Null - 11-08-18

جرب هذا التعديل
كود :
Imports System.IO.Ports
Imports System.Text

Public Class Form1

   Dim SerialPort1 As New System.IO.Ports.SerialPort()

   Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
       SerialPort1.PortName = "COM4"
       SerialPort1.BaudRate = 9600
       SerialPort1.Parity = Parity.None
       SerialPort1.StopBits = StopBits.One
       SerialPort1.DataBits = 8
       SerialPort1.Handshake = Handshake.RequestToSend
       SerialPort1.DtrEnable = True
       SerialPort1.RtsEnable = True
       SerialPort1.NewLine = vbCrLf

   End Sub

   Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
       Dim message As String = ConvertUTF8ToCUSD2(RichTextBox1.Text)
       SerialPort1.Open()
       If SerialPort1.IsOpen() Then
           SerialPort1.Write("AT" & vbCrLf)
           SerialPort1.Write("AT+CUSD=2" & vbCrLf)
           SerialPort1.Write("AT+CMGF=1" & vbCrLf)
           SerialPort1.Write("AT+CMGS=" & Chr(34) & TextBox1.Text & Chr(34) & vbCrLf)
           SerialPort1.Write(message & Chr(26))

           MsgBox("يتم الارسال")
       Else
           MsgBox("لم يتم")
       End If
   End Sub

   Public Function ConvertUTF8ToCUSD2(s As String) As String
       Dim code As String = String.Empty
       For Each c As Char In s.ToCharArray
           code &= AscW(c).ToString("X4")
       Next
       Return code
   End Function

End Class



RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - الزوي - 11-08-18

شكرا يا اخي علي الرد لكن نفس الشي لا يتم ارسال الرسالة الي الجوال


RE: ممكن مساعدة في ارسال رسالة بي لغة العربية - Null - 11-08-18

ضع الكود الاول الذي تقول فيه (عند ارسال رسالة الي الجوال تظهر علي شكل ؟؟؟؟؟؟؟؟؟؟؟)

الارسال من الجوال مكلف،
لماذا لا تستخدم رسائل SMS عن طريق الانترنت، فهي أرخص بكثير
مثل شركة https://www.mobily.ws