چگونگی کاهش حجم برنامه کامپایل شده
سلام من یه سورس کد Hot-key تحت محیط DEV ++ کامپایل کردم تو این برنامه از کتابخانه windows.h , iosteram.h استفاده شده است . نویسنده این کد فایل اجرایی رو هم قرار داده حالا مشکل اینجاست وقتی من کد رو Build میکنم حجم فایل (exe) اجرای 2.5 مگابایت میشه ولی حجم فایل اجرایی که خود نویسنده قرار داده کلا 100 کیلوبایت است .
که حدودا فایل من 20 برابر حجم داره!! میشه بگید مشکل زیاد شدن حجم فایل از کجاست ؟
نقل قول: چگونگی کاهش حجم برنامه کامپایل شده
نقل قول:
نوشته شده توسط
shinyboy
سلام من یه سورس کد Hot-key تحت محیط DEV ++ کامپایل کردم تو این برنامه از کتابخانه windows.h , iosteram.h استفاده شده است . نویسنده این کد فایل اجرایی رو هم قرار داده حالا مشکل اینجاست وقتی من کد رو Build میکنم حجم فایل (exe) اجرای 2.5 مگابایت میشه ولی حجم فایل اجرایی که خود نویسنده قرار داده کلا 100 کیلوبایت است .
که حدودا فایل من 20 برابر حجم داره!! میشه بگید مشکل زیاد شدن حجم فایل از کجاست ؟
اگر با همین کامپایلر شما کامپایل کرده باشه احتمالا خروجی باینری را patch کرده! به همین علت سایز باینری فایل کمتر شده!
یکی از کارهایی که patcher ها انجام میدند این هست که میان فضا های خالی در باینری فایل را که در اسمبلی به (nope) معروف هستند را حذف میکنند که تزریق کد پویا راتوسط کرکرها از کار بندازند.
نقل قول: چگونگی کاهش حجم برنامه کامپایل شده
چک کن با ابزار مثل UPX فشرده سازی نشده باشه