PDA

View Full Version : سوال: خطا اجرای برنامه در سیستم های دیگر



sajjadrad
دوشنبه 06 اردیبهشت 1389, 04:13 صبح
سلام من یه برنامه با ویژوال 2008 نوشتم..تو سیستم من جواب میده و راحت اجرا میشه اما تو سیستم بقیه دوستام خطا cant excute رو میده...چیکار کنم؟:گیج::ناراحت::عصبانی++:

amin1softco
دوشنبه 06 اردیبهشت 1389, 05:12 صبح
شاید ریلزش نکردی اگه پروژت از نوع کنسوله باید بطور پیش فرض در حالت debug باشه؟؟

sajjadrad
دوشنبه 06 اردیبهشت 1389, 10:07 صبح
آره از نوع کنسول هستش..من debug کردم بعد از توی پوشه debug فایل exe رو ورداشتم...چیکار کنم؟:عصبانی++::لبخند:

Nima_NF
سه شنبه 07 اردیبهشت 1389, 11:17 صبح
برای برنامه های کنسولی:
1- باید در حالت release کامپایل کنید (debug فقط در کامپایلر شما و کامپایلری که ++VC نصب باشد اجرا می شود)

2- دوم اینکه در هر کامپایلری که استفاده می کنید در کامپایلر تحت ویندوز آن باید بررسی کنید و ببینید به چه کتابخانه هایی نیازمند هست.

برنامه های نوشته شده توسط ++DevC نیازمند نصب VC++‎runtime هست (با هر کامپایلری که باشد) به علاوه اینکه اگر از MinGW استفاده می کند آنگاه نیازمند یک فایل دیگر dll مشابه همین نام نیز هست. (در فولدر MinGW\bin قرار دارد )
به این موارد prerequisite می گویند و به همین خاطر هست که از installer استفاده می کنند تا این موارد اتومات در سیستم فرد نصب شود.

3- اگر نمی خواهید از مزایای موارد فوق استفاده کنید، پروژه را به شکلی کامپایل کنید که از کتابخانه های فوق به شکل static استفاده کند.


روش ها در این لینک ها توضیح داده شده است:

لینک اول: اجرای فایل اجرایی در کامپیوترهای دیگر، ساخت setup و نصب dll های مورد نیاز (http://barnamenevis.org/forum/showthread.php?t=166371) / dynamic linking
لینک دوم : لینک static کتابخانه های ++visual C و ایجاد یک فایل exe بدون نیازمندی به سایر dll ها (http://barnamenevis.org/forum/showthread.php?p=766106) static linking /