PDA

View Full Version : کامپایلر دلفی ...



Hamid_PaK
پنج شنبه 16 آذر 1385, 19:39 عصر
چند صباحی پیش به دنبال یک برنامه کنسول بودم که بتونم ریسورسهای بیهوده داخل پروژه هایم را از بین ببرم که هم چند بایتی از حجمش کمتر بشه و هم دیگه کسی به لیست یونیتهای استفاده شده در ان پروژه دست پیدا نکنه ...

در پی همون داستان شروع به نوشتن این برنامه کردم ...
این یک برنامه کنسول است و به کاربر کمک می کنه که در اتمام پروژه ، کامپایل نهایی و ارائه آن به سهولت صورت گیرد ...

لینک دانلود : Delphi Project Compiler v1.0 BetaEdition
لینک دانلود : Delphi Project Compiler v1.1 BetaEdition
لینک دانلود : Delphi Project Compiler v1.2 BetaEdition
لینک دانلود : Delphi Project Compiler v2.0 BetaEdition (http://praiser.persiangig.com/download/proggy/delphi_prj_cmplr_v2.0b.zip)

در صورت مواجح شدن با هرگونه اشکال لطفا" در همین موضوع اطلاع رسانی شود .

موفق و پیروز باشید ، یا حق ...

Hamid_PaK
یک شنبه 19 فروردین 1386, 17:46 عصر
نسخه 1.1 منتشر شد.

قابلیتها :

کامپایل پروژه بصورت کامل.
کامپایل ریسورسهای داخل پوشه "resource_" به صورت خودکار.
حذف ریسورسهای بیهوده ای(DVCLAL, PACKAGEINFO) که کامپایلر دلفی به فایل اجرایی می افزاید.
بهینه سازی حجم فایل اجرایی به کمترین اندازه ممکنه.
حذف فایلهای اضافی پروژه (مانند: DCU,DDP, ...) بعد از کامپایل.

این برنامه هنگامی که IDE دلفی نصب باشد کار می کند.
تست شده با دلفی نسخه 7.0


مثال برای استفاده از پوشه "resource_" :
شما می توانید کلیه ریسورسهایی که در پروژه خود استفاده کرده اید را در این پورشه نگهداری کنید.
برای مثال VersionInfo فایل اجرایی ، یک فایل متنی با نام version.rc تولید کنید و اطلاعات زیر را در آن وارد کنید...
سپس برنامه فایل مورد نظر را کامپایلر می کند و فایل version.res ایجاد می شود و شما این فایل را در پروژه وارد می کنید({R _resource\version.res$}).
محتویات فایل:


1 VERSIONINFO
FILEVERSION 2,7,1,4
PRODUCTVERSION 2,7,1,4
FILEOS 0x4
FILETYPE 0x1
{
BLOCK "StringFileInfo"
{
BLOCK "040904E4"
{
VALUE "Programer", "Hamid_PaK [PRAISER]\0"
VALUE "Contact", "praiser_man@yahoo.com\0"
VALUE "ProductName", "Test Program\0"
VALUE "CompanyName", "suBBlack Corporation.\0"
VALUE "FileVersion", "1.1 BetaEditon\0"
VALUE "LegalCopyright", "2007 © suBBlack Corporation.\0"
VALUE "InternalName", "test program\0"
VALUE "OriginalFilename", "TEST_PROGRAM.EXE\0"
}
}

BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0409 0x04E4
}
}


یا حق ...

Hamid_PaK
پنج شنبه 23 فروردین 1386, 17:26 عصر
نسخه 1.2 منتشر شد.

افزون امکان کامپایل کتابخانه ها.
اصلاح چند باگ برنامه.


یا حق ...

Hamid_PaK
دوشنبه 03 اردیبهشت 1386, 05:10 صبح
نسخه 2.0 منتشر شد.

قابلیتها :

کامپایل پروژه بصورت کامل.
کامپایل ریسورسهای داخل پوشه "resource_" به صورت خودکار.
امکان انتخاب نام پوشه ریسورس توسط کاربر.
حذف ریسورسهای بیهوده ای(DVCLAL, PACKAGEINFO) که کامپایلر دلفی به فایل اجرایی می افزاید.
پشتیبانی از انواع نرم افزارهای کمپرسور برای بهینه سازی فایل خروجی پروژه.
امکان ثبت پروژه بهینه شده توسط کمپرسورهای مشهور (UPX, PECompact, ...).
حذف فایلهای اضافی پروژه (مانند: DCU,DDP, ...) بعد از کامپایل.

این برنامه نیاز به کامپایلر مورد نظر دارد.
تست شده با کامپایلر دلفی نسخه 7.0
اصلاح چندین باگ.


موفق و پیروز باشید ، یا حق ...

Hamid_PaK
چهارشنبه 05 اردیبهشت 1386, 08:54 صبح
دوستان نظری ، پیشنهادی ندارند ...

یا حق ...

Mahmood_M
چهارشنبه 26 اردیبهشت 1386, 01:05 صبح
سلام آقا حمید ...
من دانلود کردم ، میشه طریقه استفاده رو توضیح بدید ...

با تشکر ...

Hamid_PaK
چهارشنبه 26 اردیبهشت 1386, 15:30 عصر
بعد از دریافت و باز کردن بسته شما 5 فایل خواهید داشت :

PRAISER.nfo : فایل متنی ناشر
d_compiler.exe : فایل اجرایی برنامه
d_compiler.ini : فایل تنضیمات برنامه
install.bat : فایل batch جهت نصب سریع
install.reg : فایل رجیستری برای استفاده batch فایل


بیشتر توضیحات در فایل ini مورد نظر ذکر شده است ، ولی به اختصار عرض می کنم ...


[Main]

;// Define the project\resource folder to compile resources.
res_dir=_resource

;// -1:Ask, 0:Skip, 1:Remove
remove_res=-1

;// -1:Ask, 0:Skip, 1:Compress
compression=-1

[Compiler]

;// Borland Delphi Compiler exe filename.
name=DCC32.EXE

;// Borland Delphi Resource Compiler exe filename.
res_name=BRCC32.EXE

;// Delphi's path...
path=C:\Program Files\Borland\Delphi7

;// Bin folder path, use {PATH} to replace with Delphi path.
bin={PATH}\bin

;// Lib folder path, use {PATH} to replace with Delphi path.
lib={PATH}\lib

;// That folders you want to compiler search for needed units, use {LIB} to access the library and subfolder (e.g.: {LIB}\KOL).
search_path={PATH}\bin;{PATH}\imports;{PATH}\proje cts\bpl;{PATH}\rave5\lib

[Compressor]

;// 0:Unknown, 1:ASpack, 2:PECompact, 3:UPX, 4:FSG
name=3

;// Compressor exe full path.
path=C:\Compressor\upx.exe

;// Compressor exe parameters to use to compression, you can use {EXE} to put the project exe path.
param=--compress-exports=0 --strip-relocs=1 -9 "{EXE}"

;// If your compressor is a console app, you can handle the result of compression
;// by this string (e.g.: after successfully compression this msg will write out `compressed 1.`)
result_ok=Packed 1 file.

;// Simple sign to write in project exe after compression.
comment=++PACKED BY ROLAND ONE++



Main : تنضیمات اصلی

res_dir : همانطور که پیشتر توضیح داده شد برای نام فولدری را که می خواهیم ریسورسهای برنامه را درآن جمع آوری کنیم را در اینجا تعیین می کنیم.
remove_res : برای تعیین عملکرد حذف ریسورسهای بیهوده کامپایلر تعیین می شود و با سه گذینه ی 1- ، 0 و 1 مقدار دهی شود.
compression : عملکرد بهینه سازی را تعیین می کند و با سه گذینه ی 1- ، 0 و 1 مقدار دهی شود.

Compiler : تنضیمات کامپایلر

name: فایل فایل کامپایر ( فقط نام فایل و پسوندش ).
res_name : نام کامپایلر ریسورها.
path : مسیر اصلی دلفی ، کامپایلر و ...
bin : مسیر فایلهای باینری دلفی (این مسیر می تواند تهی باشد).
lib : مسیر فایلهای کتابخانه که در هنگام کامپایل ، کامپایلر بدنبال آنها می گردد.
search_path : زیر مسیرهایی برای جستجوی کتابخانه ها (در این گذینه می توانید از {LIB} برای مسیر پوشه lib استفاده کنید).

Compressor

name : تعیین نوع بهینه ساز و با 4 عدد که از 0 شروع و به 4 ختم میشود مقدار دهی میشود توجه داشته باشد اگر از بهینه سازی استفاده می کنید که پشتیبانی نمیشود حتما از گذینه ی 0 استفاده کنید.
path : مسیر کامل فایل اجرایی بهینه ساز
param : پارامترهای که برای بهینه سازی نیاز است (برای ارسال مسیر فایل مورد نظر برای بهینه سازی از {EXE} استفاده کنید).
result_ok : اگر از بهینه سازی استفاده می کنید که یک برنامه ی کونسول است می توانید نتیجه بهینه سازی را کنترل کنید و با جمله ای که در گذینه تعیین میکنید نتیجه را بازخواهید گرداند در غیر این صورت این گذینه را تهی انتخاب کنید.
comment : توضیحاتی از نوع رشته که پس از بهینه سازی در ابتدای فایل اجرای در قسمت اصلی فایل اجرایی درج خواهد شد.



شما می توانید فایل اجرایی را در هر پوشه ای بگذارید و از آن استفاده کنید ولی همانطور که در داخل فایل نصب batch نیز مشاهده می کنید من آن را در مسیر ویندوز کپی کرده ام که براحتی قابل استفاده باشد و اگر به محتویات فایل رجیستری نگاه کنید خواهید دید که در منوی کلیک راست فایل های DPR گذینه ای با نام COMPILE افزوده ام که فایل اجرایی را فراخوانی می کند تا پروژه کامپایل شود اگر از مسیر دیگری استفاده می کنید آن را در رجیستری تعیین کنید ...

یا حق ...

good vb
شنبه 17 مهر 1389, 10:20 صبح
سلام
من vbبلدم میخواستم از دلفی سر در بیارم با دلفی 7چه جور میتوانم کامپایل کنم
امیدوارم به سوالم جواب دهید

devil00x
شنبه 17 مهر 1389, 12:10 عصر
دوست عزیز در مورد طریقه نوشتن این برنامه هم توضیح بدی که چطور resource ها رو کم میکنی !!؟!؟؟

Mahmood_M
شنبه 17 مهر 1389, 13:54 عصر
من vbبلدم میخواستم از دلفی سر در بیارم با دلفی 7چه جور میتوانم کامپایل کنم
برای سئوالتون تاپیک جدا ایجاد کنید ...

برای کامپایل در دلفی 7 می تونید از منوی Project گزینه Compile رو انتخاب کنید ، برای کامپایل و اجرای همزمان هم می تونید از منوی Run گزینه ی Run رو انتخاب کنید ، برای توقف اجرای برنامه هم یا می تونید خود برنامه رو ببندید یا اینکه از منوی Run گزینه ی Program Reset رو انتخاب کنید ...

بهتره برای شروع کتابی تهیه و مطالعه کنید ، موفق باشید ...

SayeyeZohor
سه شنبه 19 دی 1391, 23:44 عصر
عزیز فایلت ویروسی بود میشه یک بار دیگه بذاری؟