السلام عليكم ورحمة الله
قمت بتنزيل برنامج client server
وقمت بتجربته
القصد من الموضوع ان اتح البرنامج في جهازين في نفس الشبكه
عندي سؤال
server بيكون
و
client في جهاز اخر على نفس لشبكه
السؤال كيف ال client يعرف رقم الاي بي لل server
هل لازم يكتبه
اشوف صعب على العمييل ان يكتب او يغير رقم الاي بي
هل في طريقه اتماتيك يشبك مع ال server
بدون ما يكتب رقم الاي بي
او طريقه من يفتح ال client
يطلع له لستة ارقام الاي بي الموجوده على نفس الشبكه وعند رقم الاي بي الخاص بال server يكتب امامه هذا سيرفر
افكرة في عدة طري جربت بعضها بس ما ضبط
هذا المشروع
https://scqq.blogspot.com/2016/07/vbnet-...-chat.html
بارك الله فيكم افيدوني وشكرا
وعليكم السلام ورحمة الله وبركاته
بكل تاكيد اخى الفاضل
نطاق العميل يجب ان يقوم بكتابة الـ IP
خصوصاً اذا كان الـ IP متغير وعلى شبكة خارجية وليس داخلية
ولكن بخصوص الشبكة الخارجية يمكن حلها
من خلال استخدام موقع noip ووضع رابط الخاص بجلب الـ IP كلما تغير عند العميل
طيب بخصوص الشبكة الداخلية لا يمكن عمل الـ noip عليه
فهنا سيكون الامر كالتالى
من الطبيعي انك على دراية بـ IP بشكل عام واللى هو كمثال
كل ما تريده هو عمل حلقة For بحيث سطر الكود بهذا الشكل
كود :
For ip As Integer = 1 To 255
وعند الاستخدام سيكون بهذا الشكل
الان كل ما عليك فى داخل حلقة For عمل كود التحقق
بان IP هو الخاص بالسيرفر وان الاتصال به تم
وخلال التحقق يرسل الـ ip الى TextBox مثلاً ومن ثم يخرج من حلقة For
وبكده تكون تلقائي قمت بجلب الـ IP بدول ان يكتب العميل ذلك
الامر الثاني وبما انه على الشبكة الداخلية
هو استخدام اسم الجهاز المشار اليه كا Server بدلاً من IP
حيث ان اسم الجهاز على الشبكة ثابت ولم يتغير
وبكده تكون حليت مشكلة او عناء جلب الـ IP
تحياتى لك
وتمنياتى لك التوفيق
(22-04-19, 12:22 AM)elgokr كتب : [ -> ]وعليكم السلام ورحمة الله وبركاته
بكل تاكيد اخى الفاضل
نطاق العميل يجب ان يقوم بكتابة الـ IP
خصوصاً اذا كان الـ IP متغير وعلى شبكة خارجية وليس داخلية
ولكن بخصوص الشبكة الخارجية يمكن حلها
من خلال استخدام موقع noip ووضع رابط الخاص بجلب الـ IP كلما تغير عند العميل
طيب بخصوص الشبكة الداخلية لا يمكن عمل الـ noip عليه
فهنا سيكون الامر كالتالى
من الطبيعي انك على دراية بـ IP بشكل عام واللى هو كمثال
كل ما تريده هو عمل حلقة For بحيث سطر الكود بهذا الشكل
كود :
For ip As Integer = 1 To 255
وعند الاستخدام سيكون بهذا الشكل
الان كل ما عليك فى داخل حلقة For عمل كود التحقق
بان IP هو الخاص بالسيرفر وان الاتصال به تم
وخلال التحقق يرسل الـ ip الى TextBox مثلاً ومن ثم يخرج من حلقة For
وبكده تكون تلقائي قمت بجلب الـ IP بدول ان يكتب العميل ذلك
الامر الثاني وبما انه على الشبكة الداخلية
هو استخدام اسم الجهاز المشار اليه كا Server بدلاً من IP
حيث ان اسم الجهاز على الشبكة ثابت ولم يتغير
وبكده تكون حليت مشكلة او عناء جلب الـ IP
تحياتى لك
وتمنياتى لك التوفيق
السلام عليكم
تسلم استاذي
انا بجرب موضوع ال
كود :
For IP As Integer = 1 To 255
Console.WriteLine(value)
Next
ما ما اعرف كيف اذا مسك الاي بي الصحيح لازم يوقف من حلقة For
بجرب وبشوف
وفكره اسم الجهاز افضل بكثير بس ما جربتها هي هيه نفس الاي بي يققدر يتصل السيرفر والاجهزه الثانيه من خلال اسم الاجهزه بدل الاي بي
ان شاءالله بجرب اليوم ولنا لقاء باذن الله
شكرا على الافكار استاذي

وعليكم السلام ورحمة الله وبركاته
على خير ان شاء الله
خد وقتك وستتمكن من اتمام الامر
وبخصوص الخروج من حلقة For عند التحقق
فقط انت كل ما تحتاج اليه داخل حلقة For
كود شرط تحقق اذا تم الاتصال بالاتصال يتم الخروج من حلفة For
الكود ويضح الفكرة كمثال
كود :
For ip As Integer = 1 To 255
If Server.Connect("192.168.1." & ip, 2269) Then
ipserver = "192.168.1." & ip
Exit For
End If
Next
MsgBox(ipserver)
تذكر بان الكود فى المثال لا له صلة ولا صحيح
لما تستخدمه من مسميات وادوات
ولكن فقط اشير الى فكرة كيفية جلب الـ ip
وعند التاكد ارساله خارج For مع اغلاق For
تحياتى لك
وتمنياتى لك التوفيق