delphi4arab منتديات دلفي للعرب
اصغر تطبيق <1kb - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : متتديات باسكال Pascal (https://delphi4arab.net/forum/forumdisplay.php?fid=7)
+--- قسم : Lazarus - Free Pascal - CrossKylix - Kylix - CrossVCL (https://delphi4arab.net/forum/forumdisplay.php?fid=34)
+--- الموضوع : اصغر تطبيق <1kb (/showthread.php?tid=4572)



اصغر تطبيق <1kb - virtual - 25-09-2012

السلام عليكم

حبيت اشاركم ب هذا المثال من انتاجي , يعني هو فضول لا اكثر , البعض يضن ان فري باسكال و لازارس لا يمكنه انتاج تطبيق بحجم صغير , المثال المرفق هو عبارة عن نافذة فقط لكن بحجم 808 بايت .

الضغط تم بواسطة crinkler


اصغر تطبيق <1kb - محمد عبد العزيز - 26-09-2012


إقتباس :البعض يضن ان فري باسكال و لازارس لا يمكنه انتاج تطبيق بحجم صغير
صغر الحجم هنا ليس بسبب Free Pascal أو Lazarus بل:
1- عدم استعمال Runtime الخاصة بالCompiler
2- استخدام Linker مختلف عن الذي ياتي مدمج مع الCompiler
3- برنامج ضغط

وهنا حالة فريدة أو خاصة لان crinkler هو 1+2 معا بنفس الوقت
لمن هو مهتم به موقعه
كود :
http://www.crinkler.net/
crinkler غير عملي بالنسبة لتطبيقات/البرامج العامة لانه يستهلك موارد كثيرة (معالج+ذاكرة) عند استخدامه و/أو تنفيذه

طبعا يمكن عمل نفس الشيئ بدلفي وهذا dmini مثال ليس من انتاجي، ليس نافذة بل مثال يستخدم OpenGL بدلفي والحجم النهائي 932 فقط
-
موضوع ذو صلة : خطوات بناء ملف تنفيذي تطبيق ويندوز (Win32)



اصغر تطبيق <1kb - virtual - 26-09-2012

اصغر حجم ب فري باسكال مع rtl الاصلي هو 30 كيلو
يمكن الاستغناء عن rtl لكن ايضا سنستغني عن :
Multithreaded heap management, code page conversion tables for strings, wide string managers, thread managers, stack checking, command line parsing, virtual methods for TObject


اما بالنسبة ل crinkler فهو غير عملي كماقال عبد العزيز , فهو موجه الى 4k demos

اعدت ترجمة dmini ب فري باسكال و النتيجة 909بايت , يعني +1 ل fpc


اصغر تطبيق <1kb - محمد عبد العزيز - 26-09-2012

لا تقفز مباشرة الى النتيجة وإطرح السؤال لماذا ؟ بمثالك استخدمت crinkler version 1.3
بمثال دلفي dmini تجد ان اصدار crinkler هو 1.2
غيره بالاصدار 1.3 ثم Compile تجد حجم مثال دلفي 905 بايت.



اصغر تطبيق <1kb - virtual - 27-09-2012

لم الاحظ فرق الاصدارات .

لكن لاحظ ان هذه النتيجة اتت نتيجة visual cpp 6 linker الذي دمج المقاطعات rdata و _INIT_ . و التي هي غير ممكنة بدلفي وحده

على العموم دائما دلفي يفوز في النهاية


اصغر تطبيق <1kb - piratewar - 27-09-2012

لحجم أقل ضعالملفالموجود مع مجلد المشروع و استخدمه بعد بناء الملف التنفيذي


اصغر تطبيق <1kb - piratewar - 10-11-2012

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