منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : سؤال بخصوص client server
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله

قمت بتنزيل برنامج  client   server   

وقمت بتجربته


القصد من الموضوع ان اتح البرنامج في جهازين في نفس الشبكه

عندي سؤال

server    بيكون 

و

client     في جهاز اخر على نفس لشبكه

السؤال كيف ال client     يعرف رقم الاي بي لل server    

هل لازم يكتبه

اشوف صعب على العمييل ان يكتب او يغير رقم الاي بي

هل في طريقه اتماتيك يشبك مع ال server    

بدون ما يكتب رقم الاي بي 

او طريقه من يفتح ال client     

يطلع له لستة ارقام الاي بي الموجوده على نفس الشبكه وعند رقم الاي بي الخاص بال server      يكتب امامه هذا سيرفر

افكرة في عدة طري جربت بعضها بس ما ضبط

هذا المشروع
https://scqq.blogspot.com/2016/07/vbnet-...-chat.html


بارك الله فيكم افيدوني وشكرا
وعليكم السلام ورحمة الله وبركاته

بكل تاكيد اخى الفاضل
نطاق العميل يجب ان يقوم بكتابة الـ IP 
خصوصاً اذا كان الـ IP متغير وعلى شبكة خارجية وليس داخلية

ولكن بخصوص الشبكة الخارجية يمكن حلها
من خلال استخدام موقع noip ووضع رابط الخاص بجلب الـ IP كلما تغير عند العميل

طيب بخصوص الشبكة الداخلية لا يمكن عمل الـ noip عليه
فهنا سيكون الامر كالتالى

من الطبيعي انك على دراية بـ IP بشكل عام واللى هو كمثال
PHP كود :
192.168.1.؟؟؟ 

كل ما تريده هو عمل حلقة For بحيث سطر الكود بهذا الشكل
كود :
       For ip As Integer = 1 To 255

وعند الاستخدام سيكون بهذا الشكل
كود :
"192.168.1." & ip

الان كل ما عليك فى داخل حلقة For عمل كود التحقق
بان IP هو الخاص بالسيرفر وان الاتصال به تم
وخلال التحقق يرسل الـ ip الى TextBox مثلاً ومن ثم يخرج من حلقة For

وبكده تكون تلقائي قمت بجلب الـ IP بدول ان يكتب العميل ذلك

الامر الثاني وبما انه على الشبكة الداخلية
هو استخدام اسم الجهاز المشار اليه كا Server بدلاً من IP

حيث ان اسم الجهاز على الشبكة ثابت ولم يتغير
وبكده تكون حليت مشكلة او عناء جلب الـ IP

تحياتى لك
وتمنياتى لك التوفيق
(22-04-19, 12:22 AM)elgokr كتب : [ -> ]
وعليكم السلام ورحمة الله وبركاته

بكل تاكيد اخى الفاضل
نطاق العميل يجب ان يقوم بكتابة الـ IP 
خصوصاً اذا كان الـ IP متغير وعلى شبكة خارجية وليس داخلية

ولكن بخصوص الشبكة الخارجية يمكن حلها
من خلال استخدام موقع noip ووضع رابط الخاص بجلب الـ IP كلما تغير عند العميل

طيب بخصوص الشبكة الداخلية لا يمكن عمل الـ noip عليه
فهنا سيكون الامر كالتالى

من الطبيعي انك على دراية بـ IP بشكل عام واللى هو كمثال
PHP كود :
192.168.1.؟؟؟ 

كل ما تريده هو عمل حلقة For بحيث سطر الكود بهذا الشكل
كود :
       For ip As Integer = 1 To 255

وعند الاستخدام سيكون بهذا الشكل
كود :
"192.168.1." & ip

الان كل ما عليك فى داخل حلقة For عمل كود التحقق
بان IP هو الخاص بالسيرفر وان الاتصال به تم
وخلال التحقق يرسل الـ ip الى TextBox مثلاً ومن ثم يخرج من حلقة For

وبكده تكون تلقائي قمت بجلب الـ IP بدول ان يكتب العميل ذلك

الامر الثاني وبما انه على الشبكة الداخلية
هو استخدام اسم الجهاز المشار اليه كا Server بدلاً من IP

حيث ان اسم الجهاز على الشبكة ثابت ولم يتغير
وبكده تكون حليت مشكلة او عناء جلب الـ IP

تحياتى لك
وتمنياتى لك التوفيق

السلام عليكم

تسلم استاذي 

انا بجرب موضوع ال 
كود :
For IP As Integer = 1 To 255
           Console.WriteLine(value)
       Next


ما ما اعرف كيف اذا مسك الاي بي الصحيح لازم يوقف من حلقة For

بجرب وبشوف

وفكره اسم الجهاز افضل بكثير بس ما جربتها هي هيه نفس الاي بي  يققدر يتصل السيرفر والاجهزه الثانيه من خلال اسم الاجهزه بدل الاي بي

ان شاءالله بجرب اليوم ولنا لقاء باذن الله

شكرا على الافكار استاذي  Rolleyes
وعليكم السلام ورحمة الله وبركاته

على خير ان شاء الله
خد وقتك وستتمكن من اتمام الامر
وبخصوص الخروج من حلقة 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

تحياتى لك
وتمنياتى لك التوفيق