تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] خطاء عند تحويل الكود
#1
السلام عليكم ورحمة الله

لدي برنامج سطح مكتب مصمم بلغة سي شارب

اريد تحويلة الي VB.NET

استخدمت مواقع التحويل وظهر خطائيين بالبرنامج :

'ReceiveMsg' is not an event of 'Form1'.1-

2- Function '<anonymous method>' doesn't return a value on all code paths. A null reference exception could occur at run time when the result is used

الخطا الاول حاولت بالطريقة دية

Public Event ReceiveMsg As EventHandler


حدث خطا بكود فورم اللواد  بقيمة ReceiveMsg


وظهر الخطا


'Public Event ReceiveMsg(sender As Object, e As System.EventArgs)' is an event, and cannot be called directly. Use a 'RaiseEvent' statement to raise an event.


الكود السي شارب

كود :
{
   public partial class Form1 : Form
   {
       public EventHandler ReceiveMsg ;
       DateTime LastReceive;

       public Form1()
       {
           InitializeComponent();
           ReceiveMsg += ReceiveMsg_Handler;
           LastReceive = DateTime.Now;
           IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName());

           IPAddress ipAddress = ipHostInfo.AddressList.Where(x => x.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
             .FirstOrDefault();
           lblip.Text = ipAddress.ToString();

       }
       private void ReceiveMsg_Handler(object sender, EventArgs e)
       {
         
           LastReceive = DateTime.Now;
           Timer1_Tick(null, null);
           if (sender.ToString().Contains("ping"))
               return;
           var Barcode = sender.ToString().Split('-');
           if (Barcode.Length > 1)
           {
               txtbarcode.Invoke((MethodInvoker)delegate
               {
                   // Running on the UI thread
                   txtbarcode.Text = Barcode[0];
                   txtname.Text = Barcode[1].Substring(0, Barcode[1].IndexOf("<EOF>"));
               });
               SendKeys.SendWait(Barcode[0]);
           }
       }
       Thread Serverthread;
       private void Form1_Load(object sender, EventArgs e)
       {
           AsynchronousSocketListener.ReceiveMsg = ReceiveMsg;

            Serverthread = new Thread(new ThreadStart(() => {
               AsynchronousSocketListener.StartListening();
           }));
           Serverthread.Start();
       }


       private void Timer1_Tick(object sender, EventArgs e)
       {
           bool res = DateTime.Now - LastReceive >= TimeSpan.FromSeconds(2);
           lblStatus.Invoke((MethodInvoker)delegate
           {
               lblStatus.Text = res ? "Disconnected": "Connected";
               lblStatus.ForeColor = res ? Color.Red : Color.Green;
           });
               return;
       }

       private void Form1_FormClosed(object sender, FormClosedEventArgs e)
       {
           timer1.Stop();
           Serverthread.Abort();
       }
   }
بعد التحويل وظهور المشاكل


كود :
Public Partial Class Form1
   Inherits Form

   Public ReceiveMsg As EventHandler
   Private LastReceive As DateTime

   Public Sub New()
       InitializeComponent()
      AddHandler ReceiveMsg, AddressOf ReceiveMsg_Handler
       LastReceive = DateTime.Now
       Dim ipHostInfo As IPHostEntry = Dns.GetHostEntry(Dns.GetHostName())
       Dim ipAddress As IPAddress = ipHostInfo.AddressList.Where(Function(x) x.AddressFamily = System.Net.Sockets.AddressFamily.InterNetwork).FirstOrDefault()
       lblip.Text = ipAddress.ToString()
   End Sub

   Private Sub ReceiveMsg_Handler(ByVal sender As Object, ByVal e As EventArgs)
       LastReceive = DateTime.Now
       Timer1_Tick(Nothing, Nothing)
       If sender.ToString().Contains("ping") Then Return
       Dim Barcode = sender.ToString().Split("-"c)

       If Barcode.Length > 1 Then
           txtbarcode.Invoke(CType(Function()
                                       txtbarcode.Text = Barcode(0)
                                       txtname.Text = Barcode(1).Substring(0, Barcode(1).IndexOf("<EOF>"))
                                   End Function, MethodInvoker))
           SendKeys.SendWait(Barcode(0))
       End If
   End Sub

   Private Serverthread As Thread

   Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
       AsynchronousSocketListener.ReceiveMsg = ReceiveMsg
       Serverthread = New Thread(New ThreadStart(Function()
                                                     AsynchronousSocketListener.StartListening()
                                                 End Function))
       Serverthread.Start()
   End Sub

   Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs)
       Dim res As Boolean = DateTime.Now - LastReceive >= TimeSpan.FromSeconds(2)
       lblStatus.Invoke(CType(Function()
                                  lblStatus.Text = If(res, "Disconnected", "Connected")
                                  lblStatus.ForeColor = If(res, Color.Red, Color.Green)
                              End Function, MethodInvoker))
       Return
   End Sub

   Private Sub Form1_FormClosed(ByVal sender As Object, ByVal e As FormClosedEventArgs)
       timer1.[Stop]()
       Serverthread.Abort()
   End Sub
End Class
الرد
تم الشكر بواسطة: asemshahen5


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال بعد اذنكم مش عارف استخدم الكود ده اليوم السابع 5 109 منذ 7 ساعة مضت
آخر رد: عبد العزيز البسكري
  [سؤال] ما الخطأ في هذا الكود sawsan 2 67 17-01-20, 09:51 PM
آخر رد: sawsan
  [سؤال] طرب الويندوز ومحتاج اجداد الكود سحاب روابط قائيمة تشغيل من اليتيوب Ali Edal 6 184 12-01-20, 12:28 PM
آخر رد: مصمم هاوي
  مشكلة في الكود اسامه الهرماوي 3 120 10-01-20, 03:27 AM
آخر رد: اسامه الهرماوي
  [سؤال] اين الخطأ في هذا الكود اليوم السابع 21 459 06-01-20, 11:40 AM
آخر رد: جميل
Rainbow [كود] ماهو الخطا في الكود الموضح في الصوره اسفل محمد مسافر 1 86 31-12-19, 03:51 PM
آخر رد: الماجيك مسعد
  تحويل مشروع الى ملف dll muad 3 125 30-12-19, 12:02 PM
آخر رد: asemshahen5
  مساعده في هذا الكود اليوم السابع 1 74 30-12-19, 09:59 AM
آخر رد: mmali127
  البحث عن كلمة داخل الكود جيولوجي مبتدئ 1 112 19-12-19, 04:51 PM
آخر رد: Rabeea Qbaha
  [نقاش] مش عارف افكر في الكود بشكل صحيح برجاء الدخول اليوم السابع 0 97 18-12-19, 06:00 AM
آخر رد: اليوم السابع

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم