AL-MOB4RM3G كتب :امّا بخصوص سؤآلي عن النظام اخي o15s19 فهو بسبب ال encoding لملفّات ال Pas, لذلك لا استطيع ان ارى الأحرف العربيّة بها, ان كنت تعمل على ويندوز 7 فهي سهلة التصليح,
إقتباس :نعم أخي أعمل على نظام 7 و أضع Non unicode العربية
تعديل / حذف المشاركة
طيب اخي الكريم جميل,
الملفات التي بها عربيّة الآن, هي,
من جهة السرفر, fCreateData
ومن جهة الكلينت, uSearchServer
بخصوص الحلّ لمكشلة ال Encoding لملفات ال Pas يمكن عمل الآتي,
افتح الملف fCreateData بالمفكّرة, يعني Notepad, ثم من File وبعدها Save as... تظهر مربع حفظ الملف, في الأسفل هناك خيار, اسمه, Encoding او شئ من هذا, يكون عآدة على Ansi, بدل من Ansi ضعه على UTF-8 , وقم بعدها بحفظ الملف بنفس الإسم طبعا,
هذا كل شئ, ان شاء الله الأمر وآضح, ؟
بعدها قم بإرفآق المشروع بارك الله لك, حتى اتمكن من العمل عليه, وآسف على الغلبة, :oops:
بالتوفيق اخي الكريم,
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
اخوآني لدي سؤآل يصب في نفس الموضوع(برنامج محادثة),
كتبت هذا في احد الموآضيع,
al-mob4rm3g كتب :طيب اخوآني الكرام,
فيما يخص عدة سرفرات, آليّة الوصل بينهم كيف تسير ؟
وأقصد هنا ليس عدة سرفرات على اجهزة مختلفة, وإنما عدة سرفرات في برنامج وجهاز وآحد,
بالتحديد شئ من هذا هي فكرتي, انشآء فورمس عند الضغط على بوتون؟
يعني يتم مثلا انشاء سرفر لكل غرفة شات, فيصبح التعامل مع الغرفة اسهل,
في حآلة الكلينت, يتم الإتصال بالبرنامج الرئيسي يعني السرفر الرئيسي وبعدها يحدد اي غرفة يود الدخول اليها, فيتم توجيهه الى سرفر الغرفة الذي يودها, ان شاء الله الفكرة وآضحة ؟
وهنا السؤآل نفسه, آلية الوصل بين السرفرات كيف تسير, علما انني حآولت بشئ من هذا لكن اكتشفت انه لا يمكن تشغيل اكثر من سرفر (idtcpserver) على نفس البورت, بعد البحث, وجدت مكون ال tidmappedporttcp لا ادري ان كان يفيد في هذه الحآلة,
بارك الله لكم,
يعني بختصار, كيف يمكن فصل ال Client ثم وصله بسرفر آخر عن طريق السرفر الأول,؟
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
+إعادة بناء الكلاينت كاملا على مبدأ ال Layers (ألف شكر لأاخي خالد)
+وضع ألية لاكتشاف الأي بيات تلقائيا تمهيدا لاستخدامها بالبحث عن السرفر
+تحسين عملية الكشف عن السرفر (بحاجة للمزيد من العمل ليصبح كاملا)
+تحويل نافذة Serverlist إلى لوحة لإعداد الاتصال مع خيارات ضبط المنفذ و الأي بي
+وضع ألية للتحقق من حالة السرفر قبل المباشرة بعملية التسجيل أو الدخول للبرنامج
+البدأ بعمل واجهة للإعدادات للكلاينت تمهيدا لحفظ إعدادات الكلاينت و السرفر
+تحسين واجهة السرفر مع عملية إتاحة ربط السرفر حتى 4 أيبيات على الجهاز
*القليل من الإصلاحات
قائمة العمل
+انهاء و إكمال عملية الكشف التلقائي(بقي القليل)
+حفظ الإعدادات(تم الاستعداد له)
+العمل على قاعدة البيانات
لمحة عن النظام المتبع بالكشف التلقائي بين الكلاينت و السرفر
الأساس و الأعتماد في هذا النظام على ال UDP Protocol و خصوصا خاصية ال BroadCasting
تتم العملية بالشكل التالي
بالسرفر هناك UDPServer يقوم باستقبال الطلبات من الكلاينتس على منفذ محدد(المستخدم بالبرنامج هو 5050)
في الكلاينت هناك UDPClient يقوم بارسال BroadCasting Message عبر الشبكة عبر منفذمعين(هو 5050 في البرنامج) و هناك Timer يقوم بمحاولة استقبال المعلومات بحال توفرها على منفذ أخر هو (5051)
و العملية كالتالي
يقوم الكلاينت باسال رسالة عبر الأي بيات الموجودة لديه على المنفذ 5050 و بنفس الوقت يبدأ تايمر بمحاولة استقبال أية معلومات على منفذ 5051 . و عندها يقوم السرفر الموجود على نفس الشبكة باستقبال الرسالة و يقوم بالتحقق منها و عند الموافقة يقوم بارسال رسالة أيضا عبر ال BroadCasting و لكن هنا لأي بي معين هو أي بي الكلاينت المرسل للرسالة و يضع في هذه الرسالة اسم السرفر و عنوانه و حالته و ترسل هذه الرسالة على المنفذ 5051 .
عندها يستقبل الكلاينت الرسالة و يتحقق منها و يقوم بإما ادخال السرفر للقائمة التي لديه أو يتحقق من حالته تمهيدا لعملية تسجيل مستخدم جديد أو عملية تسجيل الدخول كمستخدم موجود مسبقا.
إقتباس :هذه ملفات المشروع الحاوية على كتابات بالعربي محفوظة بصيغة utf-8
جميل جدا اخي الكريم, بارك الله فيك وعذرا على الغلبة, لكن الآن ان شاء الله سترآني كالأسد في المشروع :woot:
وفيما يخص الموضوع نفسه, بالنسبة لتحويل الصيغة للسورس, فطريقتي كانت معقّدة, لم اكن اعلم انه هناك اسهل منها بكثير, عموما, اشكر الأخ كاش واحد فهو من دلّ على هذه الطريقة,
مقتبس من الأخ كاش واحد,
إقتباس :عموما يمكن تغيير صيغة ملف السورس في محرر دلفي 2010، انقر بالزر الأيمن ثم format file...
وهكذا الطريقة اسهل بعشر مرّات,
بارك الله لكم جميعا,
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
اخي الكريم o15s19, لنفرض ان المعلومات المرسلة ستكون على شكل type, فهل هذه الطريقة صحيحة ؟
يعني مثلا, عند تسجيل معرّف جديد, ادري كيف تسير الأمور لو استخمت مثلا, writeln لكل معلومة لأرسلها من العميل الى الخالدم, لكن لدي احساس ان هذا خطآ, ولهذا ربما من الأفضل عمل شئ من type او طريقة اخرى ان وجد, على كل حال بحثت عن طريقة الإرسآل, لكن لم اصل الى شئ يذكر لحد الآن, انتظرالتوجيه منك بارك الله لك, :bye1:
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين