View Full Version : نحوه کامپایل در دلفی
hojjatcroos
یک شنبه 23 اسفند 1388, 14:50 عصر
در مورد کامپایل کردن در دلفی سوال داشتم که چه طور عمل کامپایل رو انجام میده.موتورهای اسکریپت نویسی مثل PaxCompiler قابلیت کامپایل رو دارند.اما همه مشخصات مثلا یک دکمه برای ایجاد شدن باید وارد شود.شما چه راهی رو پیشنهاد می کنید.این که این کار رو دستی انجام بدهم(یعنی وارد کردن همه مشخصات به صورت دستی در Syntax Editor) یا استفاده از یک موتور دیگه؟
vcldeveloper
یک شنبه 23 اسفند 1388, 21:54 عصر
سوالتون مفهوم نیست. اینکه کامپایلر دلفی چطور یک کد را کامپایل میکنه، چه ربطی به PaxCompiler داره؟!
hojjatcroos
دوشنبه 24 اسفند 1388, 07:29 صبح
شاید سوالم رو بد پرسیدم.دلفی چه طور مشخصات اشیاء ساخته شده رو در هنگام کامپایل فراخوانی میکنه؟متن های یک Memo , تصاویر یک Image LIst و ....
Mahmood_M
دوشنبه 24 اسفند 1388, 11:47 صبح
شاید سوالم رو بد پرسیدم.دلفی چه طور مشخصات اشیاء ساخته شده رو در هنگام کامپایل فراخوانی میکنه؟متن های یک Memo , تصاویر یک Image LIst و ....
خصوصيات و مشخصات اشياء روي هر فرم درون فايل DFM مربوط به همون فرم ( كه يك فايل متني هست ) ذخيره مي شن ، چند نمونه شي روي فرم بزاريد و خصوصياتشون رو مقدار دهي كنيد ، بعد روي فرم راست كليك كنيد و گزينه ي " View as Text " رو بزنيد تا مشخصات ذخيره شده ي اشياء رو ببينيد ...
براي كامپايل هم ابتدا فايلهاي PAS كامپايل شده و به فايلهاي DCU تبديل مي شن ( البته ابتدا چك ميشه كه فايلهاي DCU موجود به روز هستند يا نه ، يعني با فايل PAS فعلي مطابقت دارند يا نه ) ، بعد فايلهاي DCU توسط لينكر به هم متصل مي شن و فايلهاي Exe رو مي سازن و در آخر فايلهاي رسورس به فايل EXE ساخته شده اضافه مي شن ، فايلهاي رسورس 2 نوع هستن ، فايل با پسوند RES كه برخي اطلاعات مربوط به خود پروژه مثل آيكون فايل اجرايي رو نگهداري مي كنه و فايلهاي DFM كه اطلاعات اشياء و فرمها رو نگهداري ميكنه ...
موفق باشيد ...
hojjatcroos
دوشنبه 24 اسفند 1388, 15:22 عصر
سلام ممنون.
نقش فایل های DCU چیست؟
Mahmood_M
دوشنبه 24 اسفند 1388, 16:13 عصر
سلام ممنون.
نقش فایل های DCU چیست؟
مراحل ساخت يك فايل EXE رو ميشه به اين صورت نام برد :
نوشتن سورس كد
پردازش سورس كد و تبديل كد به زبان اسمبلي و سپس تبديل به باينري
تركيب فايلهاي كامپايل شده توسط لينكر و ايجاد فايل اجرايي
قرار دادن فايلهاي رسورس در فايل اجرايي و ساخت فايل نهايي قابل اجرا براي ويندوز
در مرحله ي دوم ، كامپايلر دلفي فايلهاي PAS رو كامپايل مي كنه و مقدار باينري اونها رو در فايلهاي DCU قرار مي ده ، فايلهاي DCU رو تقريبا ميشه با فايلهاي OBJ در زبان C ( يا ويندوز ! ) برابر دونست ، كه در نهايت براي ساخت فايل نهايي به همديگه پيوند مي خورن توسط لينكر ...
توضيح اضافي :
به اين نوع برنامه نويسي و ساخت فايل ( يعني قرار دادن سورس كد و اجزاي برنامه در چند قسمت جدا ) اصطلاحا Modular Programming گفته ميشه ، يعني هر فايل DCU به عنوان يك Module در برنامه ايجاد ميشه و در نهايت هم همه اين فايلها يا Module ها به يك Module كه همون فايل EXE نهايي هست تبديل مي شن
به Module هايي مثل فايلهاي DCU چون به فايلهاي EXE متصل ميشن و مستقل نيستن Static Modules گفته ميشه و به Module هايي مثل فايلهاي اجرايي DLL كه به صورت Dynamic توسط فايل EXE لود مي شن هم Dynamic Modules يا Auxiliary Modules گفته ميشه ...
بهتره در مورد هدفتون توضيح بيشتري بديد شايد جواب مناسب تري گرفتيد ...
موفق باشيد ...
vcldeveloper
دوشنبه 24 اسفند 1388, 16:21 عصر
فایل DCU یک unit کد ماشین تولید شده از سورس آن unit هست. این فایل میتونه حاوی کدهای اجرایی و کدهای دیباگ باشه. در زمان کامپایل، بخش هایی از یک فایل DCU که در برنامه استفاده شدند، مشخص میشه، و فقط همون بخش های به فایل EXE نهایی لینک میشند.
hojjatcroos
دوشنبه 24 اسفند 1388, 20:31 عصر
برای ساخت یک نرم افزار اوتوران می خواهم. فرم های ایجاد شده رو در قالب فایل های DFM ذخیره میکنم. از PAX Compiler برای کامپایل استفاده میکنم حالا یک فکری به ذهنم رسید که به جای کامپایل مستقیم و ذخیره اون در فایل EXE تصاویر،آیتم های ComboBox ,Memo و .. رو لود کنم نظر دوستان چیه؟
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.