delphi4arab منتديات دلفي للعرب
شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي (/showthread.php?tid=5696)



شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - Ninja C0d3r - 06-11-2013

برمجت برنامج بدلفي و أسأل ماذا يحدث من لحظة الضغط على البرنامج الى الانتهاء
ماذا يحدث في رام و ماذا يفعل النظام و ماذا يحدث في المعالج...؟
و اذا امكن ان يشرح من خلال الاولي لافهم كيف تحدث الامور و جزاكم الله خيرا
البرنامج و سورس كود
كود :
http://www.gulfup.com/?tQX9xa



شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - SMP3 - 07-11-2013

عند تشغيل البرنامج (دبل كليك ) يقوم لودر الوينداوز بحجز مساحة في الذاكرة ثم يقوم بتحميل البرنامج الى الذاكرة ..
عندما يكتمل التحميل يقوم المعالج بنداء أول تعليمة في البرنامج , قد تتساءل كيف سيتم التعرف على أول تعليمة :
ببساطة سيتم تخزين عنوان أول تعليمة في البرنامج نفسه عند Entry Point (نقطة البداية) .
برنامجك يتكون من دالة واحدة فقط MessageBox : عندما يتم اضهار المسج بوكس يتم انتظار أمر الخروج من الدالة قبل
تنفيذ السطر الثاني من الكود الذي يأتي بعد الدالة MessageBox ..
السطر التالي من الكود سطر مخفي ان صح التعبير فقط الكومايلر مسؤول عن انشائه و يتمثل في مناداة الدالة ExitProcess المسؤولة عن الخروج من البرنامج .



شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - Ninja C0d3r - 07-11-2013

جيد جيد ما شاء الله لديك خبرة كبيرة
مثلا اذا جاء مهندس عكسي و ليس لديه كود سورس كيف سيعرف ان هذا هو الكود الذي قام المبرمج بكتابته؟
عن طريق الاولي فقط؟
و بالمناسبة كيف اتعلم معرفة الاخطاء عن طريق المنقح؟


شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - SMP3 - 07-11-2013

Ninja C0d3r كتب :كيف سيعرف ان هذا هو الكود الذي قام المبرمج بكتابته؟
و كيف اتعلم معرفة الاخطاء عن طريق المنقح؟
المهندس العكسي قادر على قراءة و فهم الكود بدون اللجوء الى السورس .. لأن الكود (كود دلفي) في الأخير سيحول الى كود أسمبلي ..
بمعرفة لغة الأسمبلي يمكن التعديل على أي جزء من البرنامج ..
يلجأ المهندس العكسي لكسر برامج دلفي الى Olly & DeDe و أدوات أخرى ..

معرفة الأخطاء بالمنقح يعتمد على تتبع سير البرنامج خطوة خطوة الى غاية الوصول الى مكان الخطأ .
ان كنت تستخدم Olly فعليك أن تتقن لغة الأسمبلي + فهم جيد لدوال الوينداوز حتى تتمكن من ايجاد الأخطاء و ترقيعها ..



شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - Ninja C0d3r - 07-11-2013

لغة الاسمبلي وجدتها معقدة خصوصا في المسجلات
مثلا يقول لك المسجل به 16 بت
و ممر العنوان به 20 بت؟
عقدتني :eek:


شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - SMP3 - 07-11-2013

Ninja C0d3r كتب :لغة الاسمبلي وجدتها معقدة خصوصا في المسجلات
عقدتني :eek:

بالفعل لغة الاسمبلي معقدة قليلا .. لكن ستعتاد عليها مع الوقت ..
أنصحك بدروس Iczelion's Tutorials .

كود :
http://win32assembly.programminghorizon.com/tutorials.html



شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - Ninja C0d3r - 08-11-2013

مع اني لا افقه شئا في اللغة الانجليزية و لكن الدروس اراه سهلة و غير معقدة :d
جزاك الله خيرا سأحاول مع هذه الدروس Smile


شرح ماذا يحدث في الخفاء لبرنامج مبرمج بدلفي - SMP3 - 08-11-2013

Ninja C0d3r كتب :سأحاول مع هذه الدروس Smile
بـالـتوفيـق .. Smile