ايران ويج

نسخه‌ی کامل: حجم برنامه های دلفی
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
من بنابه دلایلی مجبور شدم پاسکال رو یاد بگیرم

فکر نمی کردم اینقدر آسون باشه چون در چند روز به قسمتهای پیشرفته رسیدم

گفتم حالا که تا اینجا اومدم دلفی رو هم کار کنم

بعد که شروع به برنامه نویسی با دلفی شدم دیدم برنامه های ساخته شده با دلفی حجم بالایی دارن

در صورتی که چند خط کد بیشتر نبود

می شه کاری کرد که این حجم کاهش پیدا کنه؟

من دیدم خیلی از این حجم مبوط به پکیج های کامپایل شده همراه برنامه است

می شه از دست این پکیج ها خلاص شد؟
حجم برنامه های کامپایل شده به دلفی بالاست چون تمام چیزهای مورد نیاز اعم از پکیج و لایبرری رو در خودش داره شما اگه تنظیمات کامپایلر رو دست بزنید میتونید اونها رو حذف کنید که در نهایت حجمی در حدود 30 تا 50 کیلوبایت پیدا میکنه البته شما زمانی میتونی این کارو بکنی که از وجود اون پکیجها و کتابخانه ها در کامپیوتر مقصد اطلاع داشته باشید
من خودم به شخصه اگه لازم باشه از پکری به نام WinUpackE استفاده میکنم که حجم برنامه ها رو در حالت معمولی به نصف میرسونه و اگه تو مصارف خاص باشه میشه فورمها رو بدن vcl و با api ساخت که در این حالت یک برنامه معمولی حجمی در حدود 15 کیلوبایت خواهد داشت
من فعلا از دو زوج خوشبخت به نامهای پاوربیسیک و دلفی استفاده می کنم و دارم روی یه ویروس میکر کار می کنم

که قسمت تنظیمات با دلفی و بقیه کارا یعنی خوده ویروس و کاراش با پاوربیسیکه برای همین حجم برنامه خیلی مهمه

حالا این پکری که گفتین رو از کجا می شه گیر اورد؟
اینم از پکر مورد نظر
خوب خود ویروس رو چرا از طریق کنسول win32 تو دلفی نمی نویسید؟ حجمش خیلی کمتر میشه تازه stand alone هم خواهد بود
(۲۷-آبان-۱۳۸۷, ۱۸:۲۷:۵۶)lord_viper نوشته است: [ -> ]اینم از پکر مورد نظر
خوب خود ویروس رو چرا از طریق کنسول win32 تو دلفی نمی نویسید؟ حجمش خیلی کمتر میشه تازه stand alone هم خواهد بود

خوب همه این قابلیت ها رو PowerBASIC هم داره!

این ویروس کمی هم باید با حافظه و سخت افزار کار کنه که اگه بخوام با دلفی بنویسم مجبورم از کامپونت ها استفاده کنم

بعد با پاوربیسیک راحتترم چون بالاخره یک ساله دارم روش کار می کنم اما هنوز یک ماه نمی شه

که دارم روی دلفی و پاسکال کار می کنم
دلفی قدرتهای نهفته تو وجودش زیاد داره مثلا استفاده مستقیم از کدهای اسمبلی یه asm مینویسی و میری خط بعد شروع میکنی به اسمبلی نوشتن و هر جا کد اسمبلیت تموم شد میری خط بعد و یه asm دیگه اضافه میکنی
نکته بعدیش استفاده مستقیم از فایلهای obj. هست که تو اسمبلی یا cیا c++ نوشته میشن هست که هر کاری میتونین بکنین
و سوم برای کار با سخت افزار اگه منظورتون بایوس یا پورتها هست علاوه بر کامپوننت کدش هم موجوده
(تو دلفی هر چیزی امکان داره فقط کافیه درکش کنی)
خوب اگه پاوربیسیک رو هم درک کنی همه این قابلیتها رو دودستی تقدیم می کنه

ولی به نکته خیلی مهم و کنکوری اشاره کردی :

کدوم یک از این نوع فایل های Obj بهترن یعنی توی تنظیمات لینکر می شه سه فایل با ساختار مختلف ساخت :

نقل قول: DCU
C
++C

این DCU نمی دونم چیه ولی در کل کدوم بهتره؟

یعنی هر کدوم قویتره ببریم با لینکرهای دیگه سر هم کنیم
اینها هیچ کدوم فایلهای obj نیستن این نوع فایلها تو زبانهای c,c++, asemble نوشته میشن و پسوندشون obj. هست مثل comersial.obj
قابلیتهاش بازم محدوده ایا تکنولوژیهای جدید مثل soap یا websnap یا برنامه نویسی چند لایه رو پشتیبانی میکنه؟ زبان visul basic رو هر کاری بکنن باز همونه حالا اسمش هر چی میخواهد باشه عمر این زبان مدتهاست به پایان رسیده
یعنی شما می گی پاوربیسیک همون ویژوال بیسیکه؟؟؟

پاوربیسیک هرکاری که من بخوام انجام می ده پس در نتیجه لزومی نمی بینم که برم زبانی یاد بگیرم که این قابلیت ها را داشته باشه

این پاسکالم گفتم دیگه مجبوری شد البته من c رو پیشنهاد دادم بقیه گروه قبول نکردند

از خیر طراحی ویرایش گر ویروس با دلفی هم گذشتم (بدون کدنویسی شد 400 کیلوبایت بدون کامپونتهای مورد نیاز)

می خوام از پکر هم استفاده نکنم چون بعضی مواقع همین پکرها سر برنامه رو به باد می دن

بعد اصلا وقت درگیر شدن با توابع API برای کم شدن حجم برنامه رو ندارم

پس با یه بحث با بقیه تصمیم گرفتم ویرایش گر را هم با پاوربیسیک طراحی کنم که هم حجمش کم می شه و هم سرعت طراحی

ولی بعد اگه وقت کردم یکی هم با دلفی می نویسم میارم مقایسه کنیم
کد:
یعنی شما می گی پاوربیسیک همون ویژوال بیسیکه؟؟؟
بله دلیل نمیشه چون با کامپایلر c کامپایل میشه پس یه زبان جدیده
کد:
پاوربیسیک هرکاری که من بخوام انجام می ده پس در نتیجه لزومی نمی بینم که برم زبانی یاد بگیرم که این قابلیت ها را داشته باشه
خیلی خوبه شما رشتت computer هست فکر کنم وقتی درست تموم شد انشالاه باید بری سربازی یا سر کار وقتی جایی میخواهی استخدام بشی یا تو روزنامه ها نگاه میندازی واسه اگهی کار اونوقت میبینی که از هر 50 در خواست 30 تاشc#.net هست 12 تاش delphi و sqlserver و 8 تاش هم vb.net و اون موقع هست به فکر چیزهای دیگه می افتی تو این جور مسایل تعصب چیز کاملا اشتباهی هست
کد:
از خیر طراحی ویرایش گر ویروس با دلفی هم گذشتم (بدون کدنویسی شد 400 کیلوبایت بدون کامپونتهای مورد نیاز)
اگه کامپوننتهای مورد نیاز رو هم روش سوار کنی باز فوقش 20 kb حجمش بالا بره نه بیشتر حجمش هم که گفتم به خاطر چیه
کد:
ولی بعد اگه وقت کردم یکی هم با دلفی می نویسم میارم مقایسه کنیم
Biggrin واسه اینکه شرایط در حالت برابر باشه باد 1 سال هم دلفی کار کنی بعد بنویسیش Biggrin

موفق باشید
برای نوشتن برنامه های کمحجم در دلفی چندین راه حل وجود داره:
1-روشی که در بالا مبین توضیح داد
2-استفاده از توابع API برای ساختن فرم و آبجکت ها (چون بیشتر حجم فایلهای استاندارد ساخته شده به ساخت فرم و آبجکت ها تعلق داره)
3-استفاده از کامپوننت KOL (در این روش برای ساخت فرم و آبجکت ها ازAPI و دستورات اسمبلی استفاده شده)
مثلا من با دلفی و ساختن یه مسیج باکس ساده تونستم حجم فایل خروجی رو به 3.5K برسونم(البته بدن استفاده از پکر و کمپرسور!)
دلیلشم استفاده مستقیم از Api و حذف یونیت های پرحجم مثل Sysutils ,... و تغییر در ساختار یونیت Sysinit و ُSystem هست
صفحه‌ها: 1 2