PDA

View Full Version : سوال: پرتابل کردن برنامه های ساخته شده



bnnoor
دوشنبه 02 خرداد 1390, 19:52 عصر
سلام دوستان اگه امکان داره یه توضیح بدید که چطوری میشه برنامه هایی رو که نوشتم پرتابل کنم اگر از طریق خد ویژوال این امکان هست توضیح بدید لطفا اگر هم نرم افزارهای دیگه ای برای این کار وجود داره لطفا معرفی کنید ممنون.

pouyansaraf
دوشنبه 02 خرداد 1390, 20:58 عصر
اگر منظورتون اینه که نیاز به نصب نداشته باشه تمام برنامه هایی که نوشته میشه پرتابل هستند
اگر موقع نصب اضلاعات اولیه مثلا با installshield در رجیستری نوشته باشه خوب دیکه پرتابل نمیشه
ولی وفتی خودتون مینویسیدمیدونید چه چیزهایی را در رجیستری نیاز دارید و همون ها رو در برنامه تان استفاده میکنید و قاعدتا" پرتایل میشه

bnnoor
دوشنبه 02 خرداد 1390, 21:08 عصر
درست متوجه نشدم منظورم اینه که هیچ فایلی جز یک فایل اجرایی نداشته باشه و احتیاج به نصب هم نداشته باشه

pouyansaraf
دوشنبه 02 خرداد 1390, 21:16 عصر
درسته
اگر فریم ورک رو سیستم نصب باشه فقط فایل اجرایی کافیه
اگر از dll یا dbms و ... استفاده میکنید هم همراه آن باشد

bnnoor
دوشنبه 02 خرداد 1390, 21:51 عصر
پس اینهمه فایلی که توی پوشه خود پروژه هست چی؟ اونا رو لازم نداره؟ یعنی فقط همون فایل اجرایی پروژه رو کپی کنم همراه با یک کانکتور sql ( برای پروژه من )؟
به نظرم اینجوری درست در نمیاد اگر منظورتون از فایل اجرایی همونی باشه که توی پوشه bin/debug قرار داره

pouyansaraf
سه شنبه 03 خرداد 1390, 00:37 صبح
بهتره بگیم فایل هایی که در شاخه build شده درست میشه را باید برداشت
ولی مد نظر داشته باش اگر از dll خاصی استفاده میکنی باید همرا اون باشه و همینطور در مورد دیتا بیس
یه امتحانی کن متوجه میشی

bnnoor
سه شنبه 03 خرداد 1390, 07:22 صبح
متوجه هستم شما چی میگی ولی میخوام تمام فایلها در یک فایل اجرایی قرار بگیره نه چندین قایل قرار داشته باشه

در ضمن منظورتون از پوشه Build همون Release هست که به هنگام ساخت Setup پر میشه؟

bnnoor
سه شنبه 03 خرداد 1390, 11:44 صبح
دوستان کسی نمیتونه یه راهنمایی کنه؟

parsaid
سه شنبه 03 خرداد 1390, 12:07 عصر
سلام
دوست عزیز میتونی از برنامه های پرتابل ساز استفاده کنی

bnnoor
سه شنبه 03 خرداد 1390, 13:04 عصر
شما چند تا معرفی کنید که واقعا کارکنه من vmware که معروف ترین هست رو امتحان کردم اصلا کار نکرد و برنامه نصب شده من رو پیدا هم نکرد همینطور چندتای دیگه رو امتحان کردم که هر کدوم اشکالاتی داشتند شما از چه نرم افزاری استفاهد میکنید؟

HAMRAHSOFT.IR
سه شنبه 03 خرداد 1390, 13:20 عصر
البته بخشيد ولي تا جاي كه من تجربه دارم براي اينكه نياز به نصب فریم ورک و اينستالر نباشه راحلي پيدا نشد اگه بشه برنامه بدون نياز با نصب فریم ورک و اينستالر اجرا كرد ميشه برنامه پرتابل نوشت البته بانك اسكيول باشه مشكل بيشتر ميشه

bnnoor
سه شنبه 03 خرداد 1390, 13:29 عصر
دوست عزیز بحث من فریم ورک نیست فقط میخوام برنامه بصورت نصبی نباشه کلا در یک فایل اجرایی ارائه بشه ( شما به برنامه ویدیو دانلودر جناب دخیل زاده توی همین سایت یه نگاه بندازید ) در مورد فریم ورک هم زیاد سرچ کردم و با برنامه xenocode هم به جاهایی رسیدم که البته حجم فایل تولیدی زیاد فرقی با برنامه بعلاوه فریم ورک نداره دلیلش هم اینه که چند dll مورد نیاز جمعا بالای 20 مگابایت میشه .

bnnoor
چهارشنبه 04 خرداد 1390, 14:13 عصر
عجیبه که تا حالا هیچکس کمکی نکرده :متفکر:

alimanam
چهارشنبه 04 خرداد 1390, 14:41 عصر
با سلام

دوست عزیز جواب ساده است شما از فایل dll ی خاصی ( رفرنس یا component خاصی استفاده کردی ؟) اگه نه که هیچ تنها نیاز به فایل اجرایی داری که روی هر سیستمی که دات نت فرم ورک منطبق با دات نت فرم ورک برنامه باشه قابلیت اجرا داره اگه آره و شما میخوای همین فایل های dll رو به برنامه خودت Embedd کنی باید از ابزارهای برنامه نویسی برای این منظور استفاده کنی البته توجه داشته باشه که هر فایل dll یا کامپونتی رو نمیشه به برنامه بچسبونی ( درون فایل اجرایی مخفی کنی ) یکی از این ابزارها که اتفاقاً از سورس کد هم محافطت میکنه Dot net Reactor هستش میتونی در اینترنت سرچ کنی و ازش استفاده کنی .

http://up.iranblog.com/images/4c8ovgiyy0zksy6r3qln.jpg

موفق باشید ./

bnnoor
چهارشنبه 04 خرداد 1390, 14:54 عصر
بله چون از طریق برنامم به دیتابیس اینترنت کانکت میشم از چند تا کانکتور استفاده کردم الان یه مشکل دیگه هم دارم با اینکه dll ها رو توی setup هم قرار میدم باز هم سیستم مقصد اونا رو پیدا نمیکنه و پیغام خطا میده و به سرور متصل نمیشه

alimanam
چهارشنبه 04 خرداد 1390, 15:08 عصر
بله چون از طریق برنامم به دیتابیس اینترنت کانکت میشم از چند تا کانکتور استفاده کردم الان یه مشکل دیگه هم دارم با اینکه dll ها رو توی setup هم قرار میدم باز هم سیستم مقصد اونا رو پیدا نمیکنه و پیغام خطا میده و به سرور متصل نمیشه من نمیدونم بعضی از این عزیزان چرا هی میخوان لقمه رو دور سر مبارک بچرخونن !!! عزیز به نظر شما مایکروسافت بیکار بوده بیاد دات نت فرم ورک بنویسه ؟ ستاپ رو برای موارد خاص درست میکنن مثلاً برنامه ایی داره از کریستال ریپوردت استفاده میکنه و و و ولی اگه برنامه شما از دیتابیس تحت وب داره استفاده میکنه و احتمالاً هم از به فرض مثال از کریستال ریپورت استفاده نکرده خوب چه دلیلی داره از ستاپ استفاده کنی ؟ دیتابیس شما چیه ؟ ( حالا به فرض Mysql باشه یا MS SQL ) فرقی نمیکنه البته اگه دومی باشه که دیگه باید حتماً یه نسخه از اسکیو ال مثل نسخه اکسپرس رو سیستم کاربر نصب باشه ولی اگه مورد اولی باشه کافیه فایل DLL کانکتور اون رو کنار فایل اجرایی بزاری و اگه کانکشن استرینگ مشکلی نداشته باشه ( درست نوشته شده باشه ) نباید خطایی رخ بده .

موفق باشید ./

bnnoor
چهارشنبه 04 خرداد 1390, 15:13 عصر
دیتابیسم My Sql هست و dll رو کنار برنامه میزارم ولی متاسفانه کار نمیکنه و کانکت نمیشه در حالی برنامه روی پروزه خودم به خوبی نصب میشه و کار میکنه در ضمن متوجه نشدم یعنی اینکه کدوم فایل فایل اجرایی منه که باید منتقل بشه؟ پس اینهمه فایلهای دیگه که کنار پروژه هست واسه چیه ؟ پس برای انتقال برنامم همین فایل exe که توی پوشه Bin/ Debug هست کافیه؟

alimanam
چهارشنبه 04 خرداد 1390, 15:31 عصر
نباید این اتفاق بیوفته شما از Error یه عکس بگیر ببینم مشکل از کجاست .


متوجه نشدم یعنی اینکه کدوم فایل فایل اجرایی منه که باید منتقل بشه؟ پس اینهمه فایلهای دیگه که کنار پروژه هست واسه چیه ؟ پس برای انتقال برنامم همین فایل exe که توی پوشه Bin/ Debug هست کافیه؟

دوست عزیز شما مطالب بالا رو دوباره بخون متوجه میشین . ( من گفتم اگه در برنامه از هر فایل dll که استفاده کرده باشی ( چه کامپونت باشه چه رفرنس ) باید کنار فایل اجرایی EXE قرار داده بشه تا قابلیت اجرا داشته باشه . البته بحث من سر استفاده کردن از کریستال ریپورت و مایکروسافت اس کیو ال نیست هااااااا اونا بحثشون جداست و نیاز به نصب فایل های خودشون دارن تا برنامه به درستی اجرا بشه .
ولی اگه از هیچ کدوم از موارد بالا که توضیح دادم رو در برنامه استفاده نکردی و مثلاً فقط از یه برنامه معمولی که کلاس های خود ویژوال استودیو استفاده کرده + پایگاه داده مای اس کیو ال , تنها و تنها برای اجرا نیاز به همون فایل اجرایی داره + فایل دی ال ال کانکتور پایگاه داده مای اس کیو ال . دیگه از این شسته رفته تر بلد ( حوصله ) نبودم که توضیح بدم .

موفق باشید /

bnnoor
چهارشنبه 04 خرداد 1390, 15:35 عصر
مشکل از ورژن کانکتور بود که فکر کنم حل شد یه سوال دیگه هم بپرسم اینکه برای ساخت نرم افزارها بهتره از کدوم ورژن فریم ورک استفاده کنم بهتره؟ چون شنیدم ورژن 3.5 روی اکثر ویندوزهای جدید نصبه احتمالا اینجوری بیشتر استقبال بشه درسته؟

HAMRAHSOFT.IR
چهارشنبه 04 خرداد 1390, 15:38 عصر
يك سوال كوچيك فقط داشتم خدمت استاد
alimanam (http://barnamenevis.org/member.php?43498-alimanam)
آيا فریم ورک را هم ساپورت ميكنه؟

alimanam
چهارشنبه 04 خرداد 1390, 15:46 عصر
یه سوال دیگه هم بپرسم اینکه برای ساخت نرم افزارها بهتره از کدوم ورژن فریم ورک استفاده کنم بهتره؟ چون شنیدم ورژن 3.5 روی اکثر ویندوزهای جدید نصبه احتمالا اینجوری بیشتر استقبال بشه درسته؟ سوالتون یکم خنده داره ! چون یه برنامه نویس مجرب سعی میکنه با حداقل امکانات بیشترین بازدهی رو داشته باشه . شما اگه برنامه ایی که میخوای بنویسی امکانش هست که با دات نت فرم ورک 1.0 نوشته بشه ! دلیل عقلانی واسه این داری که با نسخه 2.0 بنویسی ؟ نه نداری پس با همون نسخه 1.0 مینویسی تا کمترین ( حداقل ریسک ) رو کرده باشی ولی اگه کارت با همون کلاس هایی نسخه 3.5 راه میفته دلیلی به استفاده از نسخه 4 نداری و و و ( انتخاب نسخه دات نت فرم ورک بالاتر = ریسک بیشتر چون ممکنه کاربر نسخه پایین ترش رو داشته باشه )

موفق باشید ./

alimanam
چهارشنبه 04 خرداد 1390, 15:51 عصر
آيا فریم ورک را هم ساپورت ميكنه؟

چی فرم ورک رو ساپورت میکنه ؟

HAMRAHSOFT.IR
چهارشنبه 04 خرداد 1390, 16:14 عصر
با سلام

دوست عزیز جواب ساده است شما از فایل dll ی خاصی ( رفرنس یا component خاصی استفاده کردی ؟) اگه نه که هیچ تنها نیاز به فایل اجرایی داری که روی هر سیستمی که دات نت فرم ورک منطبق با دات نت فرم ورک برنامه باشه قابلیت اجرا داره اگه آره و شما میخوای همین فایل های dll رو به برنامه خودت Embedd کنی باید از ابزارهای برنامه نویسی برای این منظور استفاده کنی البته توجه داشته باشه که هر فایل dll یا کامپونتی رو نمیشه به برنامه بچسبونی ( درون فایل اجرایی مخفی کنی ) یکی از این ابزارها که اتفاقاً از سورس کد هم محافطت میکنه Dot net Reactor هستش میتونی در اینترنت سرچ کنی و ازش استفاده کنی .

http://up.iranblog.com/images/4c8ovgiyy0zksy6r3qln.jpg

موفق باشید ./

با اين برنامه ميشه كاري كرد كه ديگه فریم ورک نخواد برنامه و نياز به نصبش نباشه

alimanam
چهارشنبه 04 خرداد 1390, 16:16 عصر
با اين برنامه ميشه كاري كرد كه ديگه فریم ورک نخواد برنامه و نياز به نصبش نباشه
خیر نمیشه . کار این برنامه محافظت از سورس کد برنامه های نوشته شده با ویژوال استودیو هستش نه چیز دیگه .

موفق باشید ./

bnnoor
چهارشنبه 04 خرداد 1390, 19:27 عصر
سوالتون یکم خنده داره ! چون یه برنامه نویس مجرب سعی میکنه با حداقل امکانات بیشترین بازدهی رو داشته باشه . شما اگه برنامه ایی که میخوای بنویسی امکانش هست که با دات نت فرم ورک 1.0 نوشته بشه ! دلیل عقلانی واسه این داری که با نسخه 2.0 بنویسی ؟ نه نداری پس با همون نسخه 1.0 مینویسی تا کمترین ( حداقل ریسک ) رو کرده باشی ولی اگه کارت با همون کلاس هایی نسخه 3.5 راه میفته دلیلی به استفاده از نسخه 4 نداری و و و ( انتخاب نسخه دات نت فرم ورک بالاتر = ریسک بیشتر چون ممکنه کاربر نسخه پایین ترش رو داشته باشه )

موفق باشید ./

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