تور لحظه آخری
امروز : جمعه ، 9 شهریور 1403    احادیث و روایات:  حضرت زهرا (س):ما اهل بیت رسول خدا(ص) وسیله ارتباط خدا با مخلوقاتیم ما برگزیدگان ...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها




آمار وبسایت

 تعداد کل بازدیدها : 1813269405




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

تبدیل فایلهای اجراییEXE به dll و روش استفاده از آنها -


واضح آرشیو وب فارسی:سایت ریسک: تبدیل فایلهای اجراییEXE به dll و روش استفاده از آنها moortak 18 دي 1388, 03:48با سلام خدمت دوستان عزیز و پیشکسوتان و بزرگواران انجمن این اولین پست منه ایشالله از این به بعد زیاد مزاحم بشیم! اصل مطلب: آیا برنامه ای و یا پلاگین ای هست (که مطمئن م هست) که فایلهای اجرایی رو به فایل های دی ال ال تبدیل کنه؟ و اگر هست لطفا با توضیح کامل و روش استفاده ش بزارین و این که چطور بتونیم توی پروژه استفاده کنیم لازم به ذکر هست که فایلهای اجرایی هم با استفاده از خود ام ام بی ساخته شده اند.(سورس هم داریم در صورت نیاز به ایجاد تغییرات) Silver Soft 18 دي 1388, 06:01:rose:سلام ، ورودتون رو به جمع بچه های بیلدری خوش آمد میگم ، فکر میکنم شما با ساختار فایلهای DLL آشنایی ندارید که این سوال رو پرسیدید ، اول بگم که این کار امکان پذیر نیست ، DLL مخفف Dynamic Link Library هست که معنیش هم میشه " کتابخانه پیوند پویا " که دوستانی که آشنایی کمی با این نوع فایل ها دارن فقط میدونن که این فایل ها حاوی یکسری کد هستند ، ولی در اصل اسکلت این ساختار با فایل اجرایی exe فرق میکنه ، DLL ها به خودی خود قابل اجرا نیستند و نیاز به یک فرمانده که یک فایل Exe هست دارند ، ویندوز از این نوع فایل های برای مدیریت بهتر منابع و حافظه استفاده میکنه ، خوب با توجه به این توضیحات که دادم باید فهمیده باشید فایل های DLL ساختار خاص خودشون رو دارن و هیچ وقت نمیشه یه فایل اجرایی exe رو با یه برنامه تبدیلش کرد به DLL ، در ضمن اگر هم میشد فایلها ی بیلدر این امکان رو نداشت چون فرایند تولیدشون با فایلهای اجرایی استاندارد ویندوز فرق میکنه . اگر خواستید بگید بیشتر توضیح بدم ، موفق باشید . BEHESHT 18 دي 1388, 15:17تمام فرموده های آقا مجتبی صحیح بود ، این کار در واقع به طور اتوماتیک غیر ممکن هستش ، ولی به صورت دستی اگر به زبون اسمبلی مسلط باشی ( یعنی واقعآ بخوریش اسمبلی رو) می تونی کد های اسمبلی رو از یک فایل exe با کلی زحمت و تلاش و هفته ها وقت Rip کنی و بعد بشنی کد های Rip شده ات رو در یک Dll در یک اسمبلر آماده استفاده کنی فک کنم یه پروژه خیلی خیلی کوچولو یه 6 ماهی وقت بگیره تازه اگه زبون اسمبلی رو از فارسی هم روون تر بلد باشی بخونی و تفسیر کنی، اما به جای این که فایل های exe ات رو بخوای Dll کنی بشین فایل های MBD رو Dll کن فک کنم منظورم رو فهمیده باشی یعنی حالا که اونا با MMB نوشته شده به جای این از سورس های مورد نظر استفاده کن یه جور هایی واست کار Dll رو انجام می دن یعنی به جای کامپایل کردن فایل ترو export کن بعد با دستور زیر لود کن: RunMBD("<SrcDir>X.mbd","") Ehssan_it 18 دي 1388, 15:48فکر منظور دوسومون همون dll های خود بیلدر باشه ( که به صورت دستی میشه درست کرد ) کافیه موقع ذخیره سازی پسوند رو dll کنی moortak 18 دي 1388, 17:27فکر منظور دوسومون همون dll های خود بیلدر باشه ( که به صورت دستی میشه درست کرد ) کافیه موقع ذخیره سازی پسوند رو dll کنی واقعا ایول دارن کل بچه های فروم (به مولا!) این آخریه تایید شد. فقط یه چیز دیگه (با یه مثال ساده بگم بهتره) این راه آخری رو گرفتم چطور باید دی ال ال کرد اما برای لود کردنش چطور ؟ به فرض من یه مجموعه نرم افزاری دارم طراحی میکنم که برای هر دسته از نرم افزار ها به صورت جداگانه (آنتی ویروس، ابزار کمکی، شبکه ای، مسنجر ها و ....) میخوام یه فایل دی ال ال داشته باشم (که تا اینجاشو اوکی شده.) حالا فرض کنیم که بخوایم اون فایلهای dll ساخته شده(که در اصل exe هستند.) رو داخل یه فایل اصلی exe لود کنیم . چطور ممکنه ؟ توضیح: یادمه یه چند سال قبلها (2005-2004) مجموعه KING یه همچین کاری رو کرده بود. و چند روز پیش هم یه نرم افزار نوشته شده با MMB رو دیدم که از همین روش استفاده کرده بود.(M30 Win Assistant 1.6) برای همین خواستم دنبالش رو بگیرم.... نمیدونم منظورم رو گرفتید یا نه!!!:green: BEHESHT 18 دي 1388, 18:35اما به جای این که فایل های exe ات رو بخوای Dll کنی بشین فایل های MBD رو Dll کن فک کنم منظورم رو فهمیده باشی یعنی حالا که اونا با MMB نوشته شده به جای این از سورس های مورد نظر استفاده کن یه جور هایی واست کار Dll رو انجام می دن یعنی به جای کامپایل کردن فایل ترو export کن بعد با دستور زیر لود کن: RunMBD("<SrcDir>X.mbd","") به متن بالا دقت کن توضیح دادم صفحه رو که طراحی می کنی از منوی file بعد گزینه ی Compress & Export فایل هات رو هر جوری دلت می خواد همراه با پسورد یا ... انتخاب کن بعد موقع save به جای مثلا X.mbd اینجوری Save کن X.dll بعد طبق روشی که بالا گفتم تو برنامه ات لودش کن:wink: بازم مشکلی بود در خدتیم:rose: moortak 19 دي 1388, 16:18تشکر کمه واسه شما !!!! alishadmehr 22 دي 1388, 13:16سلام من این کار رو کردم و یک برنامه ساده با مولتی مدیا بیلدر ساختم و به صورت dll ذخیره کردم . تو یک برنامه دیگه هم همون طور که behesht گرامی فرمودند لودش کردم و جواب داد ( چون توی پوشه تمپ فایل dll رو میدیدم ) ولی توی خود برنامه اجرایی خبری نبود صفحه سفید دیده میشد . میشه لطف کنید اشکال کارم رو بگید با یک نمونه ساده درست کنید و اینجا بزارید ؟ راستی این روش میتونه قسمتی از پروژه رو که ارزش بیشتری داره رو محافظت کنه ( برا جلوگیری از دیکامپایل شدن ) . ممنون از راهنماییتون :rose: Silver Soft 22 دي 1388, 14:42راستی این روش میتونه قسمتی از پروژه رو که ارزش بیشتری داره رو محافظت کنه ( برا جلوگیری از دیکامپایل شدن ) . خیر ،بارها و بارها دیگر دوستان و خود من گفتیم ، بیلدر یک کامپایلر نیست ، کامپایلر یعنی نرم افزاری که کد نوشته شده توسط برنامه نویس را به کد قابل درک برای اسمبر تبدیل میکنه و اسمبلر هم کد اسمیلی رو به ماشین ... :-?این رو به یاد داشته باشید چیزی به نام کامپایلر جدید دیگه هیچ وقت به وجود نمیاد ، یعنی کامپایلر جدیدی با نام X چون نوشتن یک کامپایلر اگر چند صد نفر متخصص روش کار کنن در بهترین شرایط چند ده سال طول میکشه و کامپایلرهای فوق العاده قدرتمندی که الان داریم از اونها استفاده میکنیم مثل C ، Pascal همه حاصل ده ها سال برنامه نویسی متخصصان و ... هستند تا به اینجا رسیدند ، پس بحث کامپایلر برای همیشه منتفی شده ... ، این زبان هایی هم که جدیدا داره میاد و شدیدا منتقدشون هستم مثل : VB.Net و #C یا ... کامپایلر نیستن بلکه مفسر هستن و بحثشون کلا جداس ... در ضمن با توجه به اینکه بیلدر یک کامپایلر نیست پس در هر صورت به دست آوردن سوسرس کدش کار چند دقیقه وقت گزاشتن است :wink: evil_gates 22 دي 1388, 16:59سلام من این کار رو کردم و یک برنامه ساده با مولتی مدیا بیلدر ساختم و به صورت dll ذخیره کردم . تو یک برنامه دیگه هم همون طور که behesht گرامی فرمودند لودش کردم و جواب داد ( چون توی پوشه تمپ فایل dll رو میدیدم ) ولی توی خود برنامه اجرایی خبری نبود صفحه سفید دیده میشد . میشه لطف کنید اشکال کارم رو بگید با یک نمونه ساده درست کنید و اینجا بزارید ؟ راستی این روش میتونه قسمتی از پروژه رو که ارزش بیشتری داره رو محافظت کنه ( برا جلوگیری از دیکامپایل شدن ) . ممنون از راهنماییتون :rose: دوست عزیز لطفا نمونه ای که ساختید و این اشکال رو داره بزارید تا رفعش کنیم. در ضمن فکر میکنم منظور جناب behesht رو کامل متوجه نشدید یا روشی که ایشون گفتن رو اشتباه به کار گرفتید. شما وقتی میخواید یه پروژه با mmb تولید کنید با توجه به حجم و نوع برنامتون باید صفحات متفاوتی رو ایجاد کنید. این صفحات وقتی ذخیره میشن پسوند mbd میگیرن و فقط با نرم افزار بیلدر قابل اجرا هستن. پس برای اینکه کاربران دیگه هم بتونن این برنامه رو اجرا کنن لازمه شما حداقل یکی از فایلهای mbd که تولید کردید رو با گزینه Compile این نرم افزار exe کنید. و برای فراخوانی بقیه فایلها از فرمان RunMbd استفاده کنید. اگه مسیرها رو درست تعریف کرده باشید میتونید تمام صفحات برنامتون رو به این ترتیب تو همون فایل exe لود کنید. روشی که جناب behesht گفتن فقط به شما کمک میکنه که کمی ظاهر برنامه رو حرفه ای تر کنید. به این معنی که شما همون فایل mbd رو با Compress and Export با پسوند dll ذخیره می کنید. اما در باطن اتفاق خاصی نمیفته در مورد سوال دومتون هم حداکثر کاری که می تونید انجام بدید اینه که برای این فایلها موقع export کردن پسورد بزارید یا گزینه add source layer رو فعال کنید. موفق باشید moortak 23 دي 1388, 20:21پس برای اینکه کاربران دیگه هم بتونن این برنامه رو اجرا کنن لازمه شما حداقل یکی از فایلهای mbd که تولید کردید رو با گزینه Compile این نرم افزار exe کنید. و برای فراخوانی بقیه فایلها از فرمان RunMbd استفاده کنید. در آخر سر هم باید به جای x.mbd از x.dll استفاده کنید:green:(البته اگر در پسوند dll ذخیره کرده باشید)




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 3174]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن