ايران ويج

نسخه‌ی کامل: ایجاد فایلهای کم حجم
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
ایجاد فایلهای کم حجم
برای شما هم پیش اومده که بخواهید یک برنامه کوچیک بنویسین تو دلفی 7 حجم یک برنامه با فورم خالی 375kb و در delphi2010 این حجم 981kb میباشد این حخم به خاطر run time library هایی هست که کامپایلر به فایل نهایی اضافه میکنه البته بعضی پکر ها مثل WinUPackE حجم رو تا 2/3 کاهش میده ولی گاهی اوقات بعضی انتی ها به فایلهای پک شده گیر میدن راه دیگه حذف این RTL ها هست با این کار حجم فایل نهایی به مقدار قابل توجهی پایین میاد به طور مثال وقتی در حالت کنسول یک برنامه downloader مینویسین حجم فایل نهایی 18kb هست وقتی RTI ها رو حذف میکنین حجم به 2kb تقلیل پیدا میکنه البته روشهای دیگه ای هم وجود داره که حجم فایل خروجی کمتر هم میشه که مورد بحث ما نیست کامپوننت KOLاز بهترین کامپوننتهایی هست که در دلفی برای این منظور ایجاد شده این کامپوننت تمام کلاسها وتوابع مورد نیاز برای ایجاد یک Application به صورت Asembly پیاده سازی شده و فاقد هر گونه RTL میباشد حجم فایل خروجی اون 40kb هست که اگه با upx پک کنین 25kb و اگه با WinUPackE پک کنین 19.7kb حجم پیدا خواهد کرد که در موارد غیر تجاری که میاز به حجم کم در برنامه ها هست شما به راحتی میتونین از این کامپوننت استفاده کنین تنها مشکلی که این کامپوننت داره شما نمیتونین از کامپوننتهای دیگه به غیر از عناصر ویژوال اون استفاده کنین به دلیل نوع ساختارش که البته خودش دارای کلکسیون کاملی از عناصر مورد نیاز میباشد manifist رو باید دستی به ریسورس اضافه کنید


لینک پکیجبرای دلفی های 7 و 2010+برنامه نصاب

حجم 4.3 مگ

کد:
http://rapidshare.com/files/401736142/KOL-MCK4D7D14.rar
پک Kol کامپوننت manifest هم داره من قبلا دالود کردم نیازی به ایجاد Manifest دستی نیست.
یکی از دلایل کم حجم بودن توی kol حذف یه سری یویت های استادارد دلفی مثل sysutils هستش که توابع مهم و کاربردی اون مثل IntToStr در خود یونیت Kol.pas به نام Int2Str نوشته شده البته این فقط یه مثال ساده بود.
استفاده نکردن از یونیت Form , Classes هم یکی دیگه از دلایل کم حجم بودن اونه
البته روشهای دیگه ای هم واسه کم کردن فایل خروجی در دلفی هست که به عنوان مثال خودم قبلا برنامه در حد 2 کیوبایت و بعد از پک کردن در حد زیر 1 کیلو بایت با دلفی ایجاد کردم ولی تکنیک استفاده از این روش ، زیاد استاندارد نیست و موقع کامپایل دچار خطا و بعد از اون فایل ایجاد میشه و می تونه اجرا بشه.
نمونه ای فایل رو سر فرصت براتون میذارم.