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

برمجة الشبكات ..

مغلقرائج
بدأه HGB في 17 ديسمبر 2003 · 67 رد · 20,865 مشاهدة · في قسم المواضيع الهامة في قسم السي /سي++
مشاركة: واتساب X فيسبوك تيليجرام
#51

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

بعد هذه المدة بالطبع الموضوع لم يتوقف ,, انما تخدر قليلا ,, حاليا أعمل على برنامج مشاركة الملفات الذي أريد أن أنهيه بأي طريقة ,, وسأضع جزء من الكود هنا بعد أن أنتهي ,,

الأمر الآخر بخصوص ال FireWall فقد عرفت سر هذه الصنعة بشكل أفضل :) الفكرة ومافيها أني وجدت مثالا يعمل على اغلاق الاتصال بال netstat كما كنا نفعل ,, توجد بعض المشاكل في هذه الطريقة منها أننا سنقوم بعمل scan كل فترة قليلة مثل 100 ملي ثانية مثلا لنعرف المنافذ التي فتحت ,, ربما تكون المدة طويلة أو قصيرة أكثر من اللازم المهم ستعيق الأداء ,,

الطريقة الثانية وهي الأفضل أن نستخدم مايدعى بال Device Driver ,, وبهذا نملك الصلاحية الكاملة باغلاق أو حتى التصنت على أي منفذ مهما كان ,, والشيء الجيد أن نظان التشغيل سيستدعي لك دالة ال CALL Back ,, ويمرر لها بارمترات الاتصال الحالي ,,

يوجد ملف sys في الوندوز اسمه drvfltip.sys ,, مهمته تطوير تطبيقات ال FireWall بحيث يعمل Device dirver من نوع ال Kernel Mode ,,

يمكن بالطبع كتابة Device Driver مستقل لكنها ستكون أصعب قليلا ,,

الموضوع كما قلت تخدر فقط ,, وسنعود اليه قريبا جدا ,, فقط اريد أن أنهي هذا ال File sharing Program ,, ثم سنعود باذن الله ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#52

السلام عليكم

ما شاء الله همتك يا أخي و الله نار .. الله يعطيك العافية يا رب

سأكون سعيد بمشاركتك بالعمل في المشروعين :File sharing system, FireWall بعد الانتهاء من الامتحانات بعد 25 يوم و ربما تكون هذه المشاريع أول مشاريع العمل الجماعي التي علينا أن نبدأ بها

عموما لقد اطلعت على مشروع FireWall لكنه مصمم ل ISP فمهمته تختلف قليلاً فهو مسؤول عن قبول الاتصال أو رفضه و بالتالي عمليات اغلاق اتصال موجود سيصبح أقل احتمالاً لأن الإتصالات مفلترة سلفاً

ما دام معنا من يعرف كيف يستخرج سر الصنعة :) فالأمور بخير إن شاء الله, سأحاول الاطلاع على ال API's التي تكلمت عنها ان شاء الله

السلام عليكم

#53

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

أهلين PerfectStranger :) ,, منذ مدة لم ننظر هنا في الشبكات ,, لكن باذن الله لن نتوقف حتى نكتب بريمجات صغيرة ك fireWall و برنامج كمشاركة الملفات ,, وآخر ك Remote DeskTop ,, ونتعرف على بنية تشريحة لتروجان يقوم ببعض الاعمال التي تثير الأعصاب من KeyStroking وحتى عمل PaketSnifing وتحليل رزم ال TCP/IP ومعرفة بياناتها ,, والتحكم بشكل كامل في جهاز المستخدم ,, كتحريك الماوس وغيره ,, الفكرة هي اتقان برمجة الشبكات بغض النظر عن تطوير تروجان أو غيره ,,

لذا قريبا سنستمر ,, مع اني سأدخل أنا في دوامة الامتحانات بعد 3 أسابيع من اليوم لكن كل شيء سينتظم باذن الله ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#54

السلام عليكم ....

اريد ان اشارككم في موضوع الــ Firewall كون اني اعمل على الموضوع منذ فترة و قد توصلت فيه الى معلومات .. احسب انها جيده ،،،

الاخ HGB اعتقد ان الفكرة التي اعمل عليها تشبه الفكرة الاولى التي طرحتها ...

في برنامجي ( وهو مكتوب بلغة فيجول بيسك ) اعتمد على دوال الــ API .... , و عليه اعتقد ان الامر ذاته يحدث في لغة C ....

كبداية نعرف ان اهم الوظائف التي يقدمها لي الـ Firewall هي عملية الــ Block و التي تعني غلق جهة معينة (منفذ Port ما او حتى عنوان) على مستوى جهازي او حتى الشبكة التي اعمل داحلها

و سأحاول عرض مقتطفات من شفرة برنامجي

فكرة عمل البرنامج بشكل عام هي كالتالي :

- يتم اولاً عرض المنافذ المفتوحة في الجهاز و التي تكون في حالة استماع و ذلك عند طريق الدالة GetTCPTable ....

و انا هنا اعرض المنافذ المفتوحة في الجهاز (اي الحالات اتي تنتظر اتصال) في ListView

ListView1.ListItems.Clear

lngSize = 0

lngRetVal = GetTcpTable(ByVal 0&, lngSize, 0)
If lngRetVal = ERROR_NOT_SUPPORTED Then
MsgBox "نظام التشغيل لديك لا يدعم  الـ Ip Helper"
   Exit Sub
End If
ReDim arrBuffer(0 To lngSize - 1)

lngRetVal = GetTcpTable(arrBuffer(0), lngSize, 0)

If lngRetVal = ERROR_SUCCESS Then
    CopyMemory lngRows, arrBuffer(0), 4
    

For i = 1 To lngRows
    CopyMemory TcpTableRow, arrBuffer(4 + (i - 1) * Len(TcpTableRow)), Len(TcpTableRow)


    With TcpTableRow
        Set lvItem = ListView1.ListItems.Add(, , GetIpFromLong(.dwLocalAddr))
      
        lvItem.SubItems(1) = GetTcpPortNumber(.dwLocalPort)
   
        lvItem.SubItems(2) = GetIpFromLong(.dwRemoteAddr)

        lvItem.SubItems(3) = GetTcpPortNumber(.dwRemotePort)

        lvItem.SubItems(4) = GetState(.dwState)

    End With
Next i
End If

- يجب التنويه الى ان المنافذ المفتوحة تعبر لي عن حالة انتظار اتصال بها ... و انا هنا و بعد عرض جدول الــ GetTCPTable اقوم بتحديد الحالة التي اريد ان اعمل لها Block

- و بما ان الــ GetTCPTable يعود لي بالعناوين و المنافذ فأنا استطيع ان اعدل في اي حالت اتصال (كأن اغير حالة الاستماع عبر المنفذ الى حالة اغلاق ) و من ثما احفظ هذا التعديل في جدول الــ TCPTable عن طريق دالة الـ SetTCPEnrty

Private Sub Command1_Click()
Dim n As Long
Dim s As String
For i = 1 To lngRows
   CopyMemory TcpTableRow, arrBuffer(4 + (i - 1) * Len(TcpTableRow)), Len(TcpTableRow)
   n = GetTcpPortNumber(TcpTableRow.dwLocalPort)
   s = GetState(TcpTableRow.dwState)
   If n = Val(Text1.Text) Then
    TcpTableRow.dwState = 9
    s = GetState(TcpTableRow.dwState)
    SetTcpEntry TcpTableRow
    s = GetState(TcpTableRow.dwState)
    DoEvents
    Call Form_Load
     End If
Next i
End Sub

و الذي يحدث هنا اني امر على كل حالات الاتصال التي هي عندي الى ان اصل الى حالة اكون يساوي فيها رقم النفذ المحلي رقم ادخلته في مربع نص يمثل لي المنفذ الذي اريد اغلاقه ...

الشفرة مازالت ضعيفة جداً ... و ان شاء الله سوف احاول العمل عليها اكثر للوصول الى حل قوي ...

المشكلة اني من فترة قريبة انتهيت من اختبارات اليونيسكو ( التي يقوم بها الخريجون قبل التخرج ) .... و لقد اخذت وقت طويل مني و خلال اسبوعين سوف تبدأ امتحانات نهاية الفصل الدراسي ... و لكم ان تتخيلوا كم ان هذه الفترة تمثل لي فترة ضغط ...

عموماً .... ارجوا التوفيق لكل الطلاب .... و كان الله في العون ،،

و السلام

بنت اليمن ...

تم تعديل هذه المشاركة بواسطة بنت اليمن في 2 يونيو 2004 في 22:34

لا اله الا الله .. محمد رسول الله

(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#55

السلام عليكم

أهلين فيك يا HGB

الأفكار التي تكلمت عنها تدور ببالي و لم أخد أحد يساعدني فيها و ها أنت هنا :)

عموما لقد قمت بتطوير بعض الأشياء التي ممكن تنفعنا في البريمجات التي تكلمت عنها و إن شاء الله عندما أنتهي من دوامة الإمتحانات نبدأ و الله يوفق كل الطلاب

أختي بنت اليمن .. منذ فترة صنعت تقريباً نفس الكود و لكن مشكلة SetTCPEntry هي أنها لا تغلق إلا المنافذ التي في حالة Connection و لا كنني لا أستطيع منع socket معين من أن يكون مستمع Listening .. لا أعرف إذا كانت هذه المشكلة موجودة عندك أيضاً .. تحققي منها

الأفضل أن أقطع الإنترنت و أن أقفل الخزانة على كل الكتب خارج مقرراتي الجامعية لأنني قضيت أسبرعين في البحث و برمجة برامج الضغط و الحمد لله الله وفقني لكن اليوم عندي امتحان في مادة "الذكاء الصنعي" و الخطير في الموضوع أنني حتى لم أتصرف بذكاء و أؤجل مشاريعي حتي أتمكن من الدراسة :) :(

ادعوا لنا يا جماعة الخير

السلام عليكم

#56

السلام عليكم ...

الاخ الكريم PerfectStranger ... تحية طيبة ،،

ان ما قلته صحيح تماماً .. غير ان مشكلة الــ SetTCPEntry هذه ممكن اعمل لها حل عن طريق وضع اي منفذ يدخل في حالة اتصال داخل دالة تنفذ بشكل دوري ( مثلاً عندي داخل الـ VB سوف اعملها داخل الـ Timer ) ... و اقوم بفحصه ...

بشكل اوضح ...

الذي يحدث بالضبط هو اني داخل دالة الــ Timer هذه سوف اعمل عرض لجدول الـ TcpTable كل ثانية (على سبيل المثال) و اقوم بشكل دوري بفحص المنافذ التي تدخل في حالة الاتصال ... فإن كان المنفذ الذي يطلب الاتصال متاح له ذلك تتم عملية الاتصال بشكل عادي .. و ان لم يكن متاح له الاتصال (اقصد المنفذ) يتم عمل له Block ...

مع العلم اني ممكن ان اضع المنافذ الغير متاحة في Database او حتى اقرأها من قائمة List ما ...

ارجوا ان اكون عرضت الفكرة بشكل واضح لك ... كما ارجوا من الله ان يوفقك في امتحان الذكاء الاصطناعي ( و هي من المواد التي تعجبني جداً) ... و ارجوا ان لا تقطع الانترنيت و لا تضغط على نفسك اكثر من اللازم ... لأن المذاكرة كمان تحتاج الى تكتيك معين عشان تجيب نتيجة .... و كان الله في عونك و جميع الطلاب (كحالتنا) في هذه الفترة ...

الاخ HGB تحية طيبة لك ... ( اعرف انك سوف تقرأ هذا الموضوع الذي بدأناه صغيراً و هاهو اليوم بدأ يكبر ... )

و السلام عليكم ،،،

لا اله الا الله .. محمد رسول الله

(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#57

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

كما قلتم نحتاج لعداد أو شيء كل 100 ميلي ثانية مثلا لنفحص الجدول كل مرة ,, لكن ربما حتى ال 100 ملي ثانية قد تكون بطيئة اذا كنا نعمل على شبكة LAN ,, فسرعة نقل البيانات في ال LAN عالية وتصل الى 100 mgb في الثانية ,, ففي ال 100 ميلي ثانية سندخل الكثير جدا من ال PAckets ,, ربما تقوم ببعض الأمور الغير مرغوب فيها ,,

لذا في رأيي أن نطور هذا ال FireWall بهذه الطريقة البدائية ثم بعد ذلك نتحول للطريقة الثانية ,,

وهي طريقة ال Device Driver ,, لدي الكثير لأقوله عن ال device Driver والطريقة وكما قلت مايميزها أن الوندوز سيستدعي لنا دالة ويمرر لها بارمترات خاصة بكلPacket تدخل أو تخرج !! يعني تسمى Call Back Funcions ,, ومعناها أن لاتأخير أبدا لأي Packet ترديد الدخول أو الخروج ,,

هذه الطريقة مشتركة بين ال Firewall Programms وبين ال Packet Snifing Program ,, حيث سنحتاج أن نلتقط أي Packet تدخل أو تخرج من الجهاز في كلا الحالتين ,,

فماذا نفعل في رأيكم ؟

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#58

السلام عليكم ..

جمـــعة مباركة للجميع ..

الاخ الكريم HGB ... تحية طيبة ...

حاولت ان اعمل بحث عن الطريقة التي اشرت اليها Device Driver و لكني ارجع بمعلومات عن التعامل مع المنافذ الفيزيائية للجهاز مثل المنافذ التسلسلية او الـ USB Port .. لا احصل على اي معلومة عن التعامل مع المنافذ المنطقية مثل الــ TCP port or UDP port التي نحن بصدد الحديث عنها ... كذلك اخي الكريم هل هذه الطريقة للتعامل مع الــ Packets ... فقط ؟؟ ..

و اريد ان اقول ان العمل مع دوال الـ API و متابعة جدول الـ TCP بشكل دوري لا يعتبر عمل بدائي ( على الاقل هذا رأي الشخصي ... ) ، لأني اعتقد ان الجدار الناري على كل حال يعمل فحص دوري سواء للـ Ports الـ Packet في الشبكة ... و ان التعامل مع دوال الــ API واضح و سهل للفهم ... !!

و السلام عليكم ،،

بنت اليمن ...

لا اله الا الله .. محمد رسول الله

(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#59

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

بعض الوقت المستقطع لا يضر إن شاء الله :)

كما قال أخي HGB إن كانت الطريقة الوحيدة لمراقبة المنافذ التي تدخل في حالة اتصال هو الكشف الدوري عليها فإذا أردنا ألا يصل أي Packet و باعتبار أن أصغر حجم Packet هو 72 بايت و شوية معلومات يعني قول 100 بايت و زمن إرسال 100 بايت على Ethernet هو 100Byte/100Mbit = 8ms أي أننا بحاجة إلى كشف دوري بمقدار 8ms و هيك ال FireWall رح يدعييلنا كثير كثير .. أنا واثق من كون هناك طريقة أخرى لكن كما قلتم .. هذا ما نعرفه الآن .. لنبدأ به

أما بخصوص ال packet sniffing فهناك طريقة حلوة اتبعتها في بناء packet sniffer متواضع و هي بضبط الخاصة IP_HDRINCL مع Raw socket و هذا يمكننا من استقبال ال IP Header مع كل packet و عندها يمكنك عمل ما تريد .. معانا ال IP header يعني كل المعلومات عن كل شيء و يمكننا التصرف كما يحلو لنا

للأسف أنا مضغوط جداً الآن ولا يمكنني الكلام على راحتي و لذلك سأرفق مقالة صغيرة عن socket options و التي فيها شرح عن الخاصة التي تكلمت عنها

بالتوفيق للجميع

السلام عليكم

socket options.pdf

تم تعديل هذه المشاركة بواسطة PerfectStranger في 4 يونيو 2004 في 20:07

#60

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

اهلين ببنت اليمن :) ,,

بالنسبة لل device Driver فمع ال XP يوجد ملف اسمه drvfltip.sys موجود في ال sysroot/system32/driver ,, هذا NetWork Device Driver يعمل على مستوى ال Kernel mode ,,

يمكنك هذا ال device Driver البدائي نسبيا من أن تلتقط أي Packet من نوع ال tcp udp icmp ,, وبعد ذلك يتولى نظام التشغيل استدعاء دالة call Back كل مايستلم Packet خارجة أو داخلة لكرت الشبكة ,,

يمكنك أن تفعل في هذه الدالة ماتريد :) ,, تأكد من أن هذه الدالة تحتوي على كل ال Packet الداخلة والخارجة ,, المعلومات الخاصة بال Packets ستستلمها أنت في ال Parametars الخاصة بدالة ال call back ,,

لو لاحظتم هذا عكس مايحدث في الدوال العادية ,, نحن كنا نستدعي الدوال ونمرر البارامترات ,, لكن هنا سنستلم نحن البارمترات التي يمررها نظام التشغيل عندما يستلم Packet هو ويتصرف بعدها باستدعاء الدالة ,,

ابحثي في codeproject عن drvfltip وستجدين معلومات كثيرة ,, وهي مصادري أنا حتى الآن :) ,,

أخيرا وجدت الكود المصدري الخاص بال drvfltip كاملا ,, لكن لتصريفه نحتاج لل DDK ,,الذي لم أستطع ايجاده حتى الآن فلربما استنجدنا ب chik فهو يعرف في هذه الأمور :) ,, عموما يمكن أن نكتب device Driver آخر من الصفر بشرط ايجاد مكتبة التطوير DDK ,, لكن كتابة Device Driver من الصفر متعب أكثر ,, وأفضل حل مبدأي أن نستعمل مكتبة شاملة أكثر اسمها على ماأذكر Winacmp ,, "ربما الاسم ليس هكذا " ,, المهم هذا أيضا Device Driver ويستلم أي Packet أيضا وبفلترة محترمة ,,

.........................

أخي PerfectStranger ,, كلامك مزبوط بالنسبة للحسابات ,, وكما قلت لانريد أن ندخل في تفاصيل ال device Driver حتى نتاكد من عمل الطريقة العادية حتى نعرف فرق الأداء أكثر المرة التالية ,, عندما نعمل بالطريقة الخاصة بال device Driver ,,

وكما كنا نالاحظ ,, أن ننظر في المنافذ التي فتحت فقط في ال TCP Entery كل 1 ميلي ثانية فهذا أمر فظيع !! سيضيع الكثير من الأداء ,,

بالنسبة لل Packet Snifing ,, فطريقتك غريبة ,, لكن هل تقصد أنك ستسلم أي Packet داخلة لكرت الشبكة ,, أم ال Packet الخاصة ببرنامجك فقط ؟ لأن الفرق كبير ,, في حالة كتبنا برنامجا عاديا يعمل Listen في منفذ معين ,, يجب أن يكون المنفذ مغلق في الأصل ليستطيع برنامجنا أن يتنصت عليها ,, فمثلا لايمكن بالطرق العادية أن نعمل Snifing للمنفذ رقم 80 لو كنا مثبتين IIS وهو يعمل ويستخدم المنفذ رقم 80 مثلا ,, لأن أي PAcket تأتي بمعلومات في ال Application Layer منفذ Destination رقم 80 ,, سترسل فورا لتطبيقها الخاص وهو ال IIS ,, لذا لمنع التضارب لايمكن فتح منفذ مفتوح أصلا ,, لذا لايمكن أن نتنصت على ال Packets القادمة لهذا المنفذ !

اعذرني فقد نزلت الملف الذي أرفقته توا ولم أقرأه بعد ,, وسأقره بعد قليل باذن الله ,, فما رأيك ؟

كما قلت في ال device Driver لم أرد أن أنزل الكثير من التفاصيل حتى لاتحصل دوشة ,, قبل أن ننهي ال FireWall العادي ,,

وبالمناسبة حبذا أن نبدأ بكتابة الاكواد ببعض التوثيق فيها لأن مكتبة الأكواد سيتم افتتاحها قريبا ونريد أن ننزل هذه الأكواد فيها ,,

فما رأيكم ,, ويا PerfectStranger ,, لاتضغط على نفسك في فترة الامتحانات وربنا يوفقك : )

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#61

السلام عليكم

أأأأأأأأأأأأأأأأأأأأأأأأأأأأأأأأأأأأأأخ منكم أنتو يعني أنتو تشتغلوا و فايروولز و سيكيوريتي و باكيتس و جمعية و شركة و مدري شو و تقول لي بالآخر لا تضغط حالك في فترة الإمتحانات ؟!؟!؟؟!!!!

عموما مشكور جداً على نصيحتك أخي العزيز و أقدر لك ذلك لكن صاحبك لا يستطيع أن يقاوم حتى رائحة هكذا برامج :)

كلامك صحيح 100% و لكن نسيت أقول لك أنه هناك خاصة أحلى و أحلى يمكنك ضبطها لل raw socket و هي SIO_RECV_ALL و هي تجعل كرت الشبكة يعمل في نمط Promiscuous mode عندها يصبح كرت الشبكة بيأخذ كل شيء حتى لو لم يكن له و لا تنسى أيضاً أنك عندما تضبط الخاصة IP_HDRINCL فسوف تصبح في طبقة ال Network تقرأ و تكتب منها

شكرا لدعائكم جميعاً إخوتي و انتو كمان إن شاء الله موفقين

خففوا السرعة شوي حتي أنتهي من الإمتحانات فأنا لا أحب أن يفوتني شيء من عملنا سوياً :)

ادعوا لإخوتنا في العراق والله سمعت كلام تشيب له الرؤوس

السلام عليكم

#62

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

الله يعينك يا PerfectStranger والله يستر علي بعد شهر من الآن :( ,, سأكون في موقف مزري جدا مع الامتحانات ,, على العموم الله يستر ,,

بالنسبة لكلامك يبدو أن وزنه ذهب ,, فسأبحث في الأمر بتفصيل أكثر في المرفق الخاص بك ,, وسأبحث في الانترنت ,, فلربما كانت هذه خاصية جديدة تنسف نظرية ال Device Driver ,,

ولايهمك سأهديء السرعة قليلا ,, فلن أكتب شيء قبل يوم الغد :)

وفقك الله ,, وماذا سمعت عن أهل العراق !!!!! هل هي الأحداث نفسها أم هناك الجديد والغريب أكثر ؟

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#63

بسم الله الرحمن الرحيم

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

#64

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

يبدو أنك تختبر تقنيات التعرف والتوقع البصري لدينا في عقولنا بهذه الرسالة ,, بأن نخمن الحروف الناقصة ونستطيع صياغة الكلام بجمل مفيدة :)

والله لانعرف كيف يمكن أن نشرح بشرح أبسط من هذا ,, ثم يستحيل أن يستفيد القاريء من الموضوع أصلا اذا لم يستطع فهم الكلام الذي قلناه ,, ربما ببعض المجهود الزائد وقراءة الكتيب المرفق ,, ومحاولة كتابة بعض الأمثلة قد يهون الموضوع ,,

لكن يحتاج من لم يفهم الكلام جيدا الى خلفية اضافية عن الشبكات لكي يستمر ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#65

سنحرك الموضوع قريبا بشكل آخر ,, لأنني سأضيف مشروع مشاركة الملفات الموجود تحليله في ال Mail Group الخاصة بالموقع الى هنا في قسم السي قريبا جدا باذن الله ,, وسنثبت الموضوع أو نجعل له قسم مستقل حسب الحوجة ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#66

بسم الله الرحمن الرحيم

اقتباس
سنحرك الموضوع قريبا بشكل آخر ,, لأنني سأضيف مشروع مشاركة الملفات الموجود تحليله في ال Mail Group الخاصة بالموقع الى هنا في قسم السي قريبا جدا باذن الله ,, وسنثبت الموضوع أو نجعل له قسم مستقل حسب الحوجة ,,

ياريت تكون هذه الخطوة في اقرب وقت أخي HGB

ولك جزيل الشكر علي هذه المجهودات الجبارة

و الي الأمام دائما

نحو(معا نصنع الحياة)

#67

لمتابعة الموضوع في الجزء الجديد هنا :

/index.php?showtopic=60047

banner_60_468.gif

NOTHING IS IMPOSSIBLE

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

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