HomeWork_01 - تمرين تطبيقي
#11
السلام عليكم
الان حجم الملف التنفيدى 157 KO لاكن بشروط :confused: مكان تواجد الصور : مع الملف التنفيدى
اضافتا الى دالك استعملت احد البرامج الخاصة بضغط الملفات التنفيدية :o
افيدونا

[صورة: 016.gif]


الملفات المرفقة
.rar   Réduire.rar (الحجم : 176.2 ك ب / التحميلات : 229)
#12
السلام عليكم و رحمة الله
s_billdi : حل صحيح.. فكرة استعمال ضغط الصور الى Jpg - Jpeg انقصت حجم الملف الناتج..
hanipino : حل صحيح ، و تفاعل رز TestMe رائع جدا... بما يخص وضع اللواحق بجانب الملف التنفيذي ليس هو الحل للحصول على ملف تنفيذي صغير...

في نهاية وقت التمرين لي تعاليق بما يخص هذا الموضوع...

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

مدة التمرين تنتهي يوم الأثنين ان شاء الله

بالتوفيق ان شاء الله
#13
السلام عليكم و رحمة الله

تصغير حجم الملفات التنفيذية:

1- تفعيل خيار : Build with runtime packages
نعم دلفي يدمج كل المكتبات التي يحتاجها في الملف التنفيذي الناتج، على عكس الفجيال بيزك VB الذي يشتغل فقط بعد تثبيت هذه المكتبات أولا على الجهاز، يمكننا عمل نفس الشئ مع دلفي بتفعيل خيار Build with runtime packages :

المسار :
Project – Options – Packages – Runtime packages – Build with runtime packages

الناتج ملف صغير الحجم من 400 kb إلى 15 kb بدون أي ضغط.

ملاحظة :
الملف التنفيذي يعمل فقط بوجود المكتبات التي يحتاجها مثبتة على الجهاز.

2- استعمال تعليمات Windows API
و هي استدعاء دوال النظام الموجودة في المكتبات الدينامكية Dlls بإدخال البرامترات و الحصول على النتائج مباشرة في الملف التنفيذي.

مثال 01 :
استعمال MessageBoxA الموجودة في المكتبة الدينامكية user32.dll.

PHP كود :
function MessageBoxA; external user32 name 'MessageBoxA';
function 
MessageBoxA(hWnd: HWND; lpText, lpCaption: PAnsiChar; uType: UINT): Integer; stdcall 
;


مثال 02 :
إنشاء نافذة – Form باستعمال API تنتج ملف تنفيذي صغير الحجم
PHP كود :
function Dialog(HWnd, Msg, wParam, lParam: integer): integer; stdcall; 

3- عمل Custom Units مكان المستعملة افتراضيا في دلفي:

اخذ الدوال مباشرة من وحدات دلفي الافتراضية و استعمالها في المشروع دون الحاجة إلى إضافتها في قائمة Uses.

مثال : في وحدة SysUtils توجد دالة IntToStr يمكننا اخذ الدالة و إضافتها إلى مشروعنا دون إضافة SysUtils إلى قائمة Uses بهذه الطريقة نتجنب إدماج ملف يحتوي على دوال كثيرة و نحن نحتاج فقط استعمال دالة واحدة.

4- استعمال برامج ضغط الملفات التنفيذية:

استعمال هذا النوع من البرامج يسهل العملية بكثير.
أمثلة : MarioPacker – Upx – NsPack و غيرها تجدون الكثير على النت. اكتبوا فقط Packers في محركات البحث.

ملاحظة : استعمال هذه البكرز Packers في حالة ادماج ريسورسز Resources كبيرة الحجم او Skins مثلا.

---
تم إرفاق مثال مع الملفات المصدرية. لــ HolyView Template
تم إرفاق الملفات المصدرية للتمرين.

بالتوفيق إن شاء الله


الملفات المرفقة
.rar   HomeWork_01_Source.rar (الحجم : 29.41 ك ب / التحميلات : 152)
.rar   HolyView_Sample.rar (الحجم : 168.92 ك ب / التحميلات : 227)
#14
السلام عليكم اخي STRELiTZIA...
في الحقيقة اخي لم افهم الكثير من مشاركتك الأخيرة للأسف...
طبعا الخطأ في انا وليس فيك :eek:

لكن اخي... هل هذه فقد جواب على سؤال الحجم ام ماذا ؟
ومتى سيكون هناك حل للهوم وورك ؟

بارك الله فيك
#15
و عليكم السلام و رحمة الله

إقتباس :في الحقيقة اخي لم افهم الكثير من مشاركتك الأخيرة للأسف...

هي اعطاء نظرة خفيفة و عامة على مفهوم جعل الملفات التنفيذية الخاصة بدلفي صغيرة الحجم، اكمل الدورة و ستفهم اكثر اخي العزيز Smile

إقتباس :ومتى سيكون هناك حل للهوم وورك ؟
بما يخص حل التمرين التطبيقي الأول هل تقصد ارفاق شرح ؟:p لان الغرض منه هو تكملة تطبيقية بحتة بعد فهم و هضم الدرس الأول.

بما يخص الأحداث المختارة في التمرين يمكنك اخي اختيار اي حدث و استعمال ملف المــــساعدة المرفق مع دلفي للمزيد من التفصيل و التعمق لانه كما تعلم لو دخلنا في تفاصيل كل حدث او جزء من دروس الدورة لن نخرج منها ابدا و مع الوقت تصبح مملة Big Grin و قسم الأسئلة موجود لاي استفسار و غموض.


ان شاء الله تكون الفكرة قد وصلت.

بالتوفيق ان شاء الله
#16
يعطيكم العافية شباب...
#17
اخواني ده اول تمرين لي و لكن في الاحداث ما عرفت كيف اسويها
و الصورة تبع test me
و رز كلوز كيف اغير اللون لما اقترب منه
ان شاء الله تعطونا الشرح تبعها
و في ميزان حسناتكمـ


الملفات المرفقة
.rar   myhomework.rar (الحجم : 177.75 ك ب / التحميلات : 103)
#18
شكرا جزيلا على المجهود الطيب
#19
DEVASTATING كتب :اخواني ده اول تمرين لي و لكن في الاحداث ما عرفت كيف اسويها
و الصورة تبع test me
و رز كلوز كيف اغير اللون لما اقترب منه
ان شاء الله تعطونا الشرح تبعها
و في ميزان حسناتكمـ

اخي الكريم,, انا لست من منظّمي الدورة,, وحقيقة كانت بدايتي مع بداية الدورة تقريبا,,

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

مشغولين بعض الشئ,, لهذا سامحني اخي STRELiTZIA على تصحيح الآخرين,,

ولكن هذا ان شاء الله بقصد المسا عدة وليس التعدّي,, والله المستعان,,

نعم اخي الكريم,,

اطلعت على مشروعك,, وبداية جميلة وموفقة,,

الّى انه هناك بعض التنبيهات,, وهي التالي,,

ال FormStyle للفورم يجب ان يكون bsNone

هذا اولا,,

ثانيا,, الكبسة ,, اي ال button في هذه الحآلة ليست button عاديّة,,

ولكن في الدرس تم استخدام ال مكون ال Image وهو موجود تحت additional في الدلفي,,

يمكنك استخدامه ان شاء الله,,

في العنوان ,, عناك ممكن ان تستخدم الحدث,, OnMouseMove و الكود التالي قد يفيد:

PHP كود :
UrlLbl.Font.Color := ClRed; 

وبعدها ممكن تضيف الكود التالي في نفس الحدث ولكن للمكون Image للخلفيّة,,

PHP كود :
UrlLbl.Font.Color := ClBlue; 

هذا والله اعلم,,, ان شاء الله اكون قد افدت و اجبت على سؤآلك,,

بخصوص زر الكلوس,, فهو نفس عمليّة العنوان ولكن الخصائص مختلفة والله المستعان

بارك الله فيكم جميعا

والسلام عليكم ورحمة الله
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
#20
:oops:
رغم انني متأخر إلا أنني :kick:
أنجزت التمرين الاول
بالدلفي 7 نسخة خفيفة


الملفات المرفقة
.rar   Dz_V!rUs_HWK1.rar (الحجم : 154.41 ك ب / التحميلات : 124)


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم