الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية ربط جهازين !!!! عاجل جدا

مغلق
بدأه عبدالرحمن الفارس في 14 نوفمبر 2003 · 7 رد · 2,881 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الأخوة الكرام ...

ارجو المساعدة في عمل برنامجين يقومان بعمل ربط بين جهازين بحيث يكون عندي برنامج على client وبرنامج على server. باستخدام بيئة (++ vc او c++ builder)

تفصيل العمل:

1- برنامج client يقوم بعمل browse لمحتوى سيرفير ثم يقوم بعمل download لملف محدد

2- برنامج server يكون جاهز لاستقبل الطلبات من client

3- لابد من استخدام socket في عمل connected

لذا ارجو من الأخوة التجاوب وتوضيح ماهي الأدوات المطلوبة وكيفية التنفيذ او روابط مساعدة.

والله يجعل ماتقدمون في موازين حسناتكم,,,,,,,,

#2

السلام عليكم ,,,

أخي العزيز يمكنك في انشاء هذين البرنامجين التعامل بال SOCKET ويفضل اذا كنت تستعمل ال MFC أن تتعامل مع CSocket وهي فئة لتغليف توابع win32 api الخاصة بال SOCKET ,,,,

طريقة استعمالها سهلة ,,, حيث توجد دوال connect , Create , send ,recive

الان يمكن كتابة البرنامج الخاص بالسيرفر بحيث يكون دائما في وضعية Listening باستخدام الدالة Listen() أو الدالة Recive () ,,, وطبعا سيكون السيرفر في وضع الانتظار Listeining لمنفذ معين ,, مثلا وليكن 5000 وبالطبع ال client سيرسل طلباته عبر هذا المنفذ ,,,

وصيغة ارسال الطلب قد يكون متعارف عليها ,,, حيث تبرمجها انت كطريقة تعامل عامة " برتوكول " أو يمكنك التعامل ببعض الفئات الجاهزة ك CInternetSession بهذه الفئة يمكنك التعامل بتلقي وارسال الطلبات على مستوى برتوكول HTTP ,, وهي خطوة اختيارية ,, أما الأمر المهم فهو في عملية استلام الملف ,,, فيمكنك جعل السيرفر ك FTP سيرفر وسترتح كثيرا ,,, وتوجد فئة خاصة بال FTP CFtpConnection تمرر لاحدى الدوال بها الملف المطلوب مع اسم السيرفر وتبدأ بالاستلام ,,, طبعا بهذه الطريقة " أقصد الفئتين CInternetSession CFtpConnection " لن تحتاج الى لفتح منفذ جديد وعمل Listening لهذا المنفذ ,,,

أما اذا أردت التعامل على مستوى ال CSocket الصرفة ,,, فأنت حر يمكنك أن تتعامل مع أحد المنافذ المعروفة او فتح منفذك الجديد للتخاطب بين البريمجين ,,,,

بالنسبة للروابط التي تساعد في ذلك خذ هذا الموقع به أمثلة كثيرة جدا ,,, CodeProject ولو كتبت CSocket في الgoogle لوجدت الكثير من المواقع المفصلة في ذلك ,,,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#3

أخي العزيز HGB .... شكرا لك على سرعت تجاوبك.

اتمنى منك لو تكرمت ارسلتي او وضعت في المنتدى برنامج بسيط يساعدني على تصور عمل وتنفيذ ارسال ملف واستقباله .

واكون لك من الشاكرين,,,,,,

ssm@gawab.com

#4

الأخوة اعضاء المنتدى .... السلام عليكم ورحمة الله وبركاته

لمن يريد الاستفادة ومعرفة استخدام Socket في عملية الربط بين جهازين اتبع هذا الرابط :

http://www.visualcomponentlibrary.com/bcb/...kets/socket.htm

#5

السلام عليكم,

لقد سبق وأعطيت مثالا لبرنامجين كلاينت وسيرفر باستخدام Socket في هدا المنتدى لكن يمكن أن نفتح نقاشا جديدا إدا أراد الإخوان.

فSocket تستعمل على الطريقة التالية:

من جانب السيرفر يفتح Port معلوم ويبقى في الإستماع

أما الكلاينت فيجب أن يتصل بالسيرفر على الباب المفتوح وبعد الإتصال يمكن أن يتبادلا ما يريدان.

وكما قال الأخ HGB إدا كنت تستعمل MFC فهناك قسم CSocket يسهل هده البرمجة .

وإلى اللقاء في انتضار الإقتراحات.

#6

في الملف المرفق تجدون مثالا لبرمجة Client-Server باستعمال API وبدون MFC .

وأنا رهن الإشارة إدا كان فيه أي سؤال.

إلى اللقاء.

Server_Client.ZIP

#7

السلام عليكم ورحمة الله وبركاته

لدي جهاز مربوط مع الكومبيوتر عن طريق UTP cable ويتقبل ايضا ربط ال RS-232 وسؤالي هو كيف استطيع ارسال كوماند الى الجهاز واستقبال الداتا وعرضها باستخدام احد الربطين السابقين مع استخدام Borland C++Builder 6

مثلا: لو اردت ارسال الاتي من الكومبيوتر الى الجهاز باتخدام Socket

G,RFCMII,00,0,1,1

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

فكيف اقوم بارسال واستقبال البيانات؟؟؟

علما ان البورت الخاص بالجهاز هو 6500

ونظام التشغيل هو windows XP SP2

تم تعديل هذه المشاركة بواسطة محمد فلاح محمد في 14 فبراير 2008 في 16:50

#8
محمد فلاح محمد كتب:
السلام عليكم ورحمة الله وبركاته

لدي جهاز مربوط مع الكومبيوتر عن طريق UTP cable ويتقبل ايضا ربط ال RS-232 وسؤالي هو كيف استطيع ارسال كوماند الى الجهاز واستقبال الداتا وعرضها باستخدام احد الربطين السابقين مع استخدام Borland C++Builder 6

مثلا: لو اردت ارسال الاتي من الكومبيوتر الى الجهاز باتخدام Socket

G,RFCMII,00,0,1,1

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

فكيف اقوم بارسال واستقبال البيانات؟؟؟

علما ان البورت الخاص بالجهاز هو 6500

ونظام التشغيل هو windows XP SP2

أخى هل تتوقع أن يدخل هذا الموضوع أشخاص مختلفين عن الأشخاص الذين سيدخلون موضوعك الأساسى؟!

هذا الموضوع مغلق.

مواضيع مشابهة