PDA

نسخه کامل مشاهده نسخه کامل : برنامه هاي ويژوال بيسيك بدون نصب



unicorn
23-08-2005, 17:12
سلام.من يه برنامه وي بي دارم كه مي خواهم از روي سي دي بدون نصب اجرا بشه.مي خواهم بدونم اگه فايل هاي dll و activex رو بذارم كنارش درست ميشه.اگه نه راه ديگه براي اين كار وجود داره؟لطفا كمك كنيد.ممنون

Nesta
23-08-2005, 22:07
سلام دوست عزیز .
شما باید اولا سوال خودتون رو در جای خودش بفرمائید ..
و دوما هم برنامه خوب زمانی‌ که نصب می‌شه عزیز .از روی سیدی مگه اجرا می‌شه ؟
و اگه یه کمی‌ بیشتر توضیح بدین من ممنون میشم .
:wink:

unicorn
26-08-2005, 21:40
سلام.من يه برنامه دارم كه مي خواهم autorun براي سي دي باشه.پس مي خواهم نصب احتياج نداشته باشه.ولي برنامه هاي ويژوال بيسيك حتما بايد نصب بشند.مي خواهم ببينم چطور ميشه كاري كرد كه نصب لازم نباشه.مثلا برنامه اي هست كه فايل هاي مورد نياز رو بگيره و يه فايل exe بده.وقتي فايل رو اجرا كرديم خودكار dll ها رو نصب كنه و برنامه رو اجرا كنه؟ لطفا اگه راهي هست كمك كنيد.اميدوارم منظورم رو خوب گفته بشم.ممنون

Soda
26-08-2005, 22:13
يه برنامه هست بنام Alloy Executable Compiler 4.11.15 كه اين كارو انجام ميده

sa3er
26-08-2005, 22:31
سلام.من يه برنامه دارم كه مي خواهم autorun براي سي دي باشه.پس مي خواهم نصب احتياج نداشته باشه.ولي برنامه هاي ويژوال بيسيك حتما بايد نصب بشند.مي خواهم ببينم چطور ميشه كاري كرد كه نصب لازم نباشه.مثلا برنامه اي هست كه فايل هاي مورد نياز رو بگيره و يه فايل exe بده.وقتي فايل رو اجرا كرديم خودكار dll ها رو نصب كنه و برنامه رو اجرا كنه؟ لطفا اگه راهي هست كمك كنيد.اميدوارم منظورم رو خوب گفته بشم.ممنون
سلام؛
اين جمله که برنامه های ويژوال بسيک بايد حتما نصب بشوند نادرست است. برنامه های که با زبان ويژوال بسيک نوشته شده اند برای اجرا نيازمند VB Runtimes می باشند که در اکثر نسخه های جديد سيستم عامل ويندوز اين فايلها موجود می باشند. ولی به هر صورت قابل دريافت از لينک زير:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اما در صورتی که منظور شما dll خاصی بوده که استفاده نموده ايد... در داخل هر فايل dll دو تابع به نامهای:
DllRegisterServer
DllUnregisterServer

موجود هست که شما برای register کردن dll مورد نظر در ويندوز می توانيد از تابع های ذکر شده استفاده کنيد. بدون نياز به هيچ گونه برنامه جانبی از جمله regsvr32 . به طور مثال ما يک فايل داريم به اسم unicorn.dll که در داخل دايرکتوری برنامه شماست:

برای regsiter کردن آن
تعريف می کنيم در قسمت Decelarations

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

و به طور مثال برای اينکه در هنگام اجرای برنامه شما dll مورد نظر register شود:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

برای unregister کردن آن
تعريف می کنيم در قسمت Decelarations

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

و....
به همين راحتي.

و در آخر اگر منظور شما قرار دادن همه فايلهای استفاده شده در قالب يک فايل exe يعنی bind کردن آنها می باشد، راهکار استفاده از نرافزارهايی همانند:

MoleBox
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

می باشد.

موفقيت؛

Nesta
26-08-2005, 22:36
سلام با تشکر از ساسر جان .
سودا جان این برنامه میدونی‌ دقیق چی‌ کار می‌کنه .یه کمی‌ اگه توضیح بدی بهتر میفهمم .چون برنامه جالبی‌ باید باشه.متشکر.

Soda
26-08-2005, 22:41
فايلهاي اضافي رو به فايل اجرايي ميچسبونه
و موقع اجرا تو يه جا كه ما مشخص كنيم آنها رو اكستركت ميكنه
البته اگه بخواين اينقدر هم ساده نباشه از برنامه thinstall استفاده كنين
كه البته كركش موجود نيست

unicorn
27-08-2005, 07:18
سلام.خيلي از كمكي كه كرديد ممنونم

تکنیک برتر
09-10-2005, 08:37
ببخشید دوستان که مزاحم شدم
ولی باید بگویم که نمی شود از روی سیدی ویژوال بسیک را اجرا کرد تا موقعی که نصب نشود.
رجستری کدش را نصب نکند در بسیاری از امکانات ویبی را از بین می برد. وقتی رجستریش نسب نشود. کامپوننت هاش
را نمی توانیم از همش استفاده کنیم.

Payman_62
25-12-2005, 20:03
من يك فايل exe رو به کمک molebox چسبوندم به برنامم حالا که فایل ترکیب شده را اجرا میکنم فقط برنامه خودم اجرا میشه و از فایل دوم خبری نیست آیا برا اجرا فایل های ترکیبی نیاز به کدنویسی هست؟ بعد از اجرای برنامم چه طور میتونم فایل ترکیب شده با برناممو اجرا کنم؟

sa3er
26-12-2005, 00:52
Payman_62 عزيز
برنامه مول باکس فايلهای که شما برای آن معين می کنيد را در يک فايل exe جمع می کند. بطور مثال شما يک ديتابيس که برنامه شما از آن استفاده می کند را با خود فايل اجرايی اصلی نرم افزار خود ادغام می کنيد.

پس کار برنامه فقط ادغام فايهاييست که شما مسير دهی کرديد. بله برا اجرای فايلهای اجرايی ديگر بايد در برنامه اصلی با استفاده از دستور shell فايلهای exe مورد نظر خود را اجرا کنيد.

Payman_62
26-12-2005, 12:00
Payman_62 عزيز
برنامه مول باکس فايلهای که شما برای آن معين می کنيد را در يک فايل exe جمع می کند. بطور مثال شما يک ديتابيس که برنامه شما از آن استفاده می کند را با خود فايل اجرايی اصلی نرم افزار خود ادغام می کنيد.

پس کار برنامه فقط ادغام فايهاييست که شما مسير دهی کرديد. بله برا اجرای فايلهای اجرايی ديگر بايد در برنامه اصلی با استفاده از دستور shell فايلهای exe مورد نظر خود را اجرا کنيد.
sa3er من کار برنامرو میدونم ولی مشکل اینجاست بعد از اجرای فایل فقط برنامه خودم باز میشه و فایل ترکیبی نه اجرا میشه نه جایی اکسترکت میشه من از همه درایو ها properties گرفتم هیچ فایلی رو هارد اضافه نشده بود سرچ کردم فایل ترکیبی رو جایی پیدا نکرد خوب این فایل که جایی وجود نداره رو که نمیتونم با shell اجرا کنم.
لطفا راهنمایی کنید

sa3er
27-12-2005, 00:00
پيمان جان اول فايل اجراييت رو بوسيله برنامه mole با برنامه اصليت ادغام کن بعد از اين دستور استفاده کن ببين نتيجه چي ميشه:


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

يك نكته رو هم بنده اينجا اضافه كنم... اين برنامه مول فايلهاي ادغام شده رو به حافظه extract مي كنه نه درايوهاي كامپيوتر.

;)

Payman_62
27-12-2005, 01:33
پيمان جان اول فايل اجراييت رو بوسيله برنامه mole با برنامه اصليت ادغام کن بعد از اين دستور استفاده کن ببين نتيجه چي ميشه:


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

;)
من نفهمیدم منظور از فایل اجرایی و برنامه اصلی چیه ولی این کارو کردم
ببين من تو برنامه يك كليد گذاشتم با اين كد: "Shell App.Path & "\a.exe
a.exe اسم فایلی که با برنامه خودم ترکیب کردم و سورسشو ندارم حالا وقتی فایل حاصل رو در فولدری که a.exe موجود نباشه کپی میکنم و بر روی کلید کلیک میکنم runtime error 53 میده میگه file not found
تازه این دستور فایل a.exe رو اگه در مسیر فایل ترکیب شده باشه اجرا میکنه نباشه هم خوب error میده دیگه اگرم a.exe اسم خود فایل ترکیبی باشه دوباره اجراش میکنه که فایده ای نداره
ببین فکر میکنم باید فایل ترکیب شده با برناممو با یک کد یه جایی اکسترکت کنم بعد اجراش کنم درسته؟ولی کدش چیه؟

يك نكته رو هم بنده اينجا اضافه كنم... اين برنامه مول فايلهاي ادغام شده رو به حافظه extract مي كنه نه درايوهاي كامپيوتر.
اگه این جوری باشه که عالیه شنیده بودم برنامه ای هست این کارو میکنه ولی نمیدونستم mole هم میتونه ولی چرا تو پروسه ها گزینه ای اضافه نمیشه اصلا چه طور بهش دسترسی پیدا کنم؟

sa3er
27-12-2005, 23:06
اي بابا...
اول تو برنامه اصلي كه سورشو دارين اون كد رو اضافه كنيد
بعد دو تا فايل اگزه رو با برنامه مول ادغام كنيد.
سپس رو اون دكمه اي كه كد مربوطه رو بهش اختصاص داديد كليد كنيد تا ببينيد چي ميشه.

بله مكانيزم تقريبا تمامي packer ها همين هست كه اطلاعات encrypt شده رو به حافظه extarct مي كنند

حالا يه سري هم به صفحه هاي زير بزنيد و manual برنامه مول رو نگاه بندازيد شايد راهي پيدا شود
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

موفقيت

Payman_62
28-12-2005, 00:52
اي بابا...
اول تو برنامه اصلي كه سورشو دارين اون كد رو اضافه كنيد
بعد دو تا فايل اگزه رو با برنامه مول ادغام كنيد.
سپس رو اون دكمه اي كه كد مربوطه رو بهش اختصاص داديد كليد كنيد تا ببينيد چي ميشه.

آخه با این کار که میگی فقط یک فایل اجرا میشه
ببین من این کارارو میکنم فقط لطف کن با حوصله بخون
تو قسمت executable برنامه خودم مثلا b.exe که سورسشو دارم open میکنم
pack to هم مثلا c.exe که اسم فایل حاصل هست
بعد add file رو میزنم و مثلا فایل a.exe رو که سورسشو ندارم open میکنم
بعد pack to box رو میزنم که فایل c.exe تولید میشه
c.exe رو اجرا میکنم
حالا اگه تو کلید نوشته باشم
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید و روش کلیک کنم که دوباره c.exe اجرا میشه و باز فایل a.exe اجرا نمیشه
و اگرم فایل c.exe رو جای دیگه کپی کنم و بعد اجراش کنم و کد کلید این باشه
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید رو کلید که کلیک کنم میگه file not found
مشکل من دسترسی نداشتن به a.exe هست نمیدونم چه طور اجراش کنم

Payman_62
04-05-2006, 01:43
ياد اين تاپيك بخير. sa3er خان تو تاپيك [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] زندش كرد.
الآن ديگه اين مشكل رو با Mole رو ندارم. بهتره در موردش توضيح بدم تا اگه كسي خواست استفاده كنه مثل من به مشكل بر نخوره.
من ميخواستم 2 تا exe رو با هم بايند كنم يا به بچسبونم كه با اجراي يكي بقيه هم اجرا بشن. mole يه پكر هست كه براي اين كار نوشته نشده. mole ميتونه فايل هاي مورد نياز برنامه شما مثل ocx ها يا dll ها رو به فايل اجراييتون بچسبونه تا رو هر سيستمي اجرا بشن. من بعد از اينكه مشكلم حل نشد تو تاپيك خود mole box اين سوال رو پرسيدم و فهميدم 2 تا exe رو بايند نميكنه.
براي بايند كردن 2 تا exe هم بايندرهاي زيادي هست.