السلام عليكم ورحمة الله وبركاته
لدي مشروع تخرج في الجامعة حول الشبكات وواجهتني مشكله في طريقة نقل المحاضرة من جهازي الى بقية الأجهزة ( اي برود كاست)
وقد قمت بالإستفادة من كتاب المتألق فادي عبدالقادر حيث هو شبيه بالبرنامج Conference Desktop System حيث تتطرق لهذا الموضوع عن طريق multicast فكيف اقوم بإستخدام هذه الطريقة حيث أن جهازي ليس جهاز سيرفر معين بل جهاز في شبكة مكونه من 10 أجهزه وليس سيرفر خاص
فماهي الطريقة الصحيحه لإرسال صورة سطح المكتب بشكل متكرر من جهازي الى بقية الأجهزه حيث سأطرح الكود المستخدم في الإرسال والإستقبال لكن حيرني
كود الإرسال:
Bitmap bt = new Bitmap(CaptureScreen.CaptureScreen.GetDesktopImage());
pictureBox1.Image = ResizeBitmap(bt, 600, 400 );
MemoryStream ms = new MemoryStream();
pictureBox1.Image.Save(ms,System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] arrImage = ms.ToArray();
Socket server = new Socket(AddressFamily.InterNetwork,
SocketType.Dgram, ProtocolType.Udp);
IPEndPoint iep = new IPEndPoint(IPAddress.Parse(textBox1.Text), 5020);
server.SendTo(arrImage,iep);
server.Close();
وكود الإستقبال:
void Receive()
{
UdpClient cl=new UdpClient(5020);
cl.JoinMulticastGroup(IPAddress.Parse("224.0.0.1"));
IPEndPoint ip=new IPEndPoint(IPAddress.Any,0);
byte[]data=cl.Receive(ref ip);
MemoryStream ms=new MemoryStream();
pictureBox3.Image=Image.FromStream(ms);
cl.Close();
}
اكرر حيث أن جهازي ليس سيرفر واية طريقه أفضل لي الـ multicast او الـ broadcast
وكيف أضيف باقي الأجهزه اذا سأستخدم الـ multicast حيث سأرفق المشروع لمن سيدلني على الحل
حيث في البرنامج Electronic Server الفورم هو sendlec
حيث انني اريد أن اعرض سطح مكتبي الى باقي الأجهزه في الشبكة
أتمنى من الأخ فادي النظر الى هذه المشكله حيث أن الكتاب الذي حصلت عليه الخاص بالشبكات لم يتطرق الى برنامج الإستقبال الخاص بـ سطح المكتب وإذا كان الجهاز ليس سيرفر
وايضاً الصورة تكون متقطعه ( الصورة التي سوف أرسلها) لا تظهر وكأنها فيديو بل تظهر كبيره ثم تصغر ثم تصغر وهكذا الى ان تصبح ضغيره جداً فمن اين هذا الخلل
هذا ولكم جزيل الشكر