کم کردن حجم فایل های کامپایل شده ( زیاد )

MahmoodM30

مدیر <A href="http://forum.majidonline.com/forums/
سلام دوستان امیدوارم حال همگی خوب باشه من میخواستم از دوستان بپرسم که چه جوری میتونم حجم فایل های کامپایل شده رو کمتر کنم مثلا حجم فایل ام بی دی من 200 کیلو بایت هست وقتی کامپایلش میکنم میشه 500 یا 600 کیلو بایت حالا میخوام بپرسم میشه حجمش رو توی همون 200 یا حداقل 300 تا کامپایل کرد از این بیشتر نشه اگه میتونید زود تر کمک کنید ممنون از همگی دوستان.
 

K@M@L

Well-Known Member
سلام

برای این کار میتونید حجم player رو کم کنید

موقع ساخت فایل exe به قسمت Player نگاه کنید خواهید دید که سه تا گزینه وجود داره

گزینه اول که حالت استاندارد هست Full

گزینه دوم تا حدی حجم player رو کم میکنه ، ولی دیگه نمیتونید از پلاگین و صدا و برخی از چیزهای دیگه استفاده کنید E-card

گزینه سوم هم تا حدی مانند دومی هست با این تفاوت که فقط از صدا نمی تونید استفاده کنید NoFMOD

در ضمن میتونید در قسمت Compression Method با انتخاب حالت zip تا حدی از حجم فایل کم کنید
 
آخرین ویرایش:

MahmoodM30

مدیر <A href="http://forum.majidonline.com/forums/
سلام دوست عزیز ممنون از جوابت ولی متاسفانه من این روش رو هم امتحان کرده بودم خودتون هم میدونید که خیلی محدود هست برای همین من یه چیز جدیدتر میخوام که خیلی حجم رو بیاره پایین اگه به غیر از این روشی هست دوستان دریغ نکنند آخه تا الان که خودم چیزی پیدا نکردم ولی در هر حال بابت جوابتون ممنون
 

silvercover

کاربر متخصص
سلام دوست عزیز ممنون از جوابت ولی متاسفانه من این روش رو هم امتحان کرده بودم خودتون هم میدونید که خیلی محدود هست برای همین من یه چیز جدیدتر میخوام که خیلی حجم رو بیاره پایین اگه به غیر از این روشی هست دوستان دریغ نکنند آخه تا الان که خودم چیزی پیدا نکردم ولی در هر حال بابت جوابتون ممنون

شما دقیقا از چه عناصری در پروژه خودتون استفاده کردین؟
 

MahmoodM30

مدیر <A href="http://forum.majidonline.com/forums/
سلام من توی برنامه ام میخوام از کادر محاوره ای استفاده کنم ولی این کار به گفته دوستان خیلی مشکله که خودم هم همین رو میدونم برای همین من باید از روش دیگه ای استفاده کنم . حالا من اومدم اون قسمت هایی که قرار هست به صورت کادر محاوره ای باشه رو به فایل اجرایی تبدیل کردم و حجمشون زنده بالا و اگه من بیام توی برنامه اصلی امبد کنم حجمش خیلی زیادتر میشه حالا من میخوام به غیر از این روش از روش دیگه ای استفاده کنم تا حجم فایل های اجرایی که ساختم کم بشه تا حجم کل برنامه بیاد پایین به جز این روش روش دیگه هم برای کادر محاوره پیدا کردم ولی وقتی کادر محاوره ای رو اجرا میکنم برنامه اصلی هم قابل اجرا میشه که من نمیخوام اینطور بشه ولی من تونستم برنامه اصلی رو هم غیر فعال کنم ولی نمیتونم بعد از بسته شدن کادر محاوره ای برنامه اصلی رو از غیر فعال بودن آزاد کنم. ( من توی این کادر محاوره ای از پلاگین ها و یک موزیک استفاده کردم که با انتخاب گزینها از قسمت پلیر نمیشه از اینها توی پروژه استفاده کرد در ضمن خیلی هم حجم نمیاد پایین واسه همین این روش هم به درد نمیخوره )

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

silvercover

کاربر متخصص
من متوجه دقیق منظور شما از بابت کادرهای محاوره ای نشدم. این کادر ها دقیقا چی هستن؟

ضمن اینکه شما برای ارسال دستور به یه فایل اجرایی دیگه در صورتی که با بیلدر ساخته شده می تونین از ارسال پارامتر ها به شیوه Command Line استفاده کنید و به فایل اجرایی خارجی فرامینی رو ارسال کنید تا در داخلش کاری صورت بگیره. اگر هم فایل اجرایی خارجی با بیلدر ساخته نشده باشه بایستی قابلیت کار با مدل Command Line رو داشته باشه تا بشه باهاش ارتباط داشت. یک پاسخ مشابه برای این سوال:

http://forum.majidonline.com/showpost.php?p=568282&postcount=6
 

MahmoodM30

مدیر <A href="http://forum.majidonline.com/forums/
سلام دوست عزیز واقعا ممنون ازتون اون مثالی که معرفی کردین خیلی به دردم خورد و حدودا 70 درصد کارم رو راه انداخت فقط یه مشکل که هست اینکه کمی توی برنامه خودم جواب نمیده حالا براتون بگم چه جوری

من وقتی دکمه ای رو کلیک میکنم باید ابتدا کادر محاوره ای مربوط به اون بازشه ( منظورم از کادر محاوره یک فایل ام بی دی هست که توی برنامه اصلی امبد شده که با هر بار کلیک بر روی دکمه به صورت جداگانه باز میشه که این کار به خوبی انجام میشه ) و بعد از این کار باید یک HotSpot شو بشه و دیگه کاربر نتونه روی برنامه اصلی دسترسی داشته باشه تا وقتی که کادر محاوره ای بسته شه ( این کار هم به خوبی و به کمک شما درست شد ) اما یه مشکل که هست و اون اینکه توی پیج 1 این کد نوشته شده ScriptTimer("Script","1000") وتوی اسکریپت هم این کد ها

num_of_commands$ = CmdLineParam$[0]
If (num_of_commands$<>'0') Then
If (CmdLineParam$[1]='OK' & sent=0) Then
If (CmdLineParam$[2]='OK') Then
Hide("HotSpot")
sent = 1
End
End
Else
Clipboard("GET","clipboard$")
If (clipboard$='OK_FROM_MBD' & sent=0) Then
Hide("HotSpot")
sent = 1
empty$=''
Clipboard("SEND","empty$")
End
End
ScriptTimer("Script","1000")
یعنی وقتی من کادر محاوره ای ( همون فایل ام بی دی که توی برنامه اصلی امبد شده ) رو میبندم این کد اجرا میشه و HotSpot رو هید میکنه و کاربر میتونه به برنامه دسترسی داشته باشه اما اون تایمی که به برنامه داده شده (1000) اگه سرعت عمل داشته باشی فقط میتونی دوبار از این کد استفاده کنی و بعد از اون نمیشه که نمیشه من هم هر کاری کردم نتونستم درستش کنم تایمش رو تغییر دادم بعد کارهای دیگه هم انجام دادم ولی کار نکرد در صورتی که توی مثال شما به خوبی کار میکنه نمیدونم چرا توی برنامه من کار نمیکنه لطفا اگه میتونید زحمتی نیست یه کمکی به ما بکنید ممنون ازتون.
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
من اون مثال رو ندیدم، ولی با توجه به کدهایی که قرار دادین، این کدها مربوط میشن به رابط Command Line
شما میتونید این کدها رو در اسکریپتی بنام CBK_CMDLINE (به بزرگی حروف دقت کنید - تمام کلمات با حروف بزرگ لاتین هستند) در Master Top Layer قرار بدید (بجای اینکه یک اسکریپت تایمر هر 1 ثانیه این کدها رو اجرا کنه) با این روش به محض پاس شدن پارامتری به برنامتون، کدهای مربوطه اجرا میشن.
 

MahmoodM30

مدیر <A href="http://forum.majidonline.com/forums/
سلام دوباره به شما خسته نباشید من از راهنمایی های شما استفاده کردم و به گفته شما عمل کردم ولی جواب نداد که نداد والا دیگه خسته شدم فکر کنم من دیگه بلد نیستم این مشکل رو خودم از این بیشتر حل کنم حالا میخواستم بگم اگه میشه و زحمتی نیست شما برام حلش کنید من اون مثالی رو براتون پیوست کردم ببینید و اگه میشه حلش کنید و برام دوباره پیوست کنید ممنون میشم ازتون.
 

پیوست ها

  • M30.rar
    31.4 کیلوبایت · بازدیدها: 27

MahmoodM30

مدیر <A href="http://forum.majidonline.com/forums/
سلام، دوستان نمیخوان کمک کنند منتطرم من دیگه خسته شدم از بس نتونستم به جوابم برسم میخواستم اگه کسی هست جوابم رو بده . فایل پیوستی هم بالا هست دانلود کنید و ببینید .
 

Saman

مدیر انجمن مولتی مدیا بیلدر
سلام
شما فایل media2 رو با نام media2.exe کمپایل کن بزار کنار media1.
فقط یادت باشه تیک Allow only one instance رو موقع کمپایل بزنی.

این کاری که من کردم از CmdLineParam استفاده میکته.

موفق باشید...!
 

پیوست ها

  • M30.zip
    31.3 کیلوبایت · بازدیدها: 19

MahmoodM30

مدیر <A href="http://forum.majidonline.com/forums/
سلام آقا سامان عزیز واقعا ازتون ممنون که من رو راهنمایی کردین واقعا کار رو راه انداخت در کل از دوستان دیگه هم ممنون هستم با تشکر از همگی.
 

Silver PC

Well-Known Member
دوست عزیز لطفا برای تشکر فقط به کلیک بر روی دکمه تشکر بسنده کنید تا نظم انجمن ها بهم نخوره
 

جدیدترین ارسال ها

بالا