PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ساختن فایل exe با VB 2010 ؟



sajjad_AD
17-11-2011, 19:27
سلام
من با ویژوال استادیو 2010 مشکل دارم و نمیدونم چطوری پروژه مو به صورت exe داشته باشم تا روی PC های دیگه هم کار کنه.وقتی از گذینه های Build و Publish استفاده می کنم یه کارایی می کنه ولی فایل exe از پروژم نمی سازه.
میشه دوستان بگن که چجوری ازش یه فایل exe بگیرم که تو ویندوز xp هم کار کنه.فریم ورک و اینجور چیزا تو پروژم نیست.یه برنامه ی ساده.
ممنون :hi:

behnam6500
17-11-2011, 19:38
وقتی یه پروژه جدید ایجاد میکنی همون اولش ورژن فریم ورک رو تعیین باید بکنی

وقتی برنامه مینویسی و run میکنی و برنامت اجرا میشه، در اصل از برنامه یه exe ساختی و exe اجرا میشه.

فایل کامپایل شده در مسیر bin/debug قرار داره

برای اینکه برنامه هم در xp اجرا شه، cpu رو بزار روی any cpu یا x86 که در حالت پیش فرض any cpu هست

sajjad_AD
17-11-2011, 20:24
خیلی ممنون از پاسختون اما باز Error میده:
You can see links before reply

sadmonew
17-11-2011, 21:11
با سلام
دوست عزيز شما پروژتون رو به صورت Release كامپايل كنيد تا ERROR نده.

________________________
You can see links before reply
________________________

sajjad_AD
18-11-2011, 01:56
از پاسختون ممنونم,من این کار رو هم کردم:
You can see links before reply

ولی بازم همونه:
You can see links before reply

esisafa
18-11-2011, 02:48
دوست عزیز
فورمت exe برای فایل های اجرایی ویندوز ماکروسافته حالا چه جور میشه که خود نرم افزار ماکروسافت exe درست نکنه
اگه تو دایرکتوری برنامه، exe رو پیدا نکردی یعنی یک جای کار میلنگه. یا vb مشکل داره یا برنامه ای که شما مینویسین غلط داره و debug نمیشه

در ضمن مگه بدون .net framwork هم میشه با vb2010 برنامه نوشت. شما باید با ورژن پایین اون برنامه بنویسی تا مشکلی پیش نیاد

behnam6500
18-11-2011, 09:28
اگه میتونی سورست رو بده ببینم میتونم کامپایلش کنم یا نه؟

altium
18-11-2011, 11:33
باید installer بسازی ازش.

sajjad_AD
18-11-2011, 14:44
از توجه همه تون ممنون :mrgreen:

دوست عزیز
فورمت exe برای فایل های اجرایی ویندوز ماکروسافته حالا چه جور میشه که خود نرم افزار ماکروسافت exe درست نکنه
اگه تو دایرکتوری برنامه، exe رو پیدا نکردی یعنی یک جای کار میلنگه. یا vb مشکل داره یا برنامه ای که شما مینویسین غلط داره و debug نمیشه
مشکل نبود فایل exe که حل شد ولی تو ویندوز xp اجرا نمی شه :unh:


اگه میتونی سورست رو بده ببینم میتونم کامپایلش کنم یا نه؟
فعلا که سورسی در کار نیست فقط فورم خالی :0013:


باید installer بسازی ازش.
این instaler رو چه جوری باید ساخت,وفتی installer رو اجرا می کنم می خواد فایل های مورد نیازش رو از اینترنت دانلود کنه که :x

behnam6500
18-11-2011, 14:53
یه بار دات نت رو repair کن... شاید ایرادی پیدا کرده باشه؟!

sajjad_AD
18-11-2011, 18:01
بله مشکل از دات نت بود
ولی من دنبال این بودم که بدون دات نت رو ویندوز xp کار کنه ولی مثل اینکه نمیشه بازم از همگی ممنونم:hi:

altium
18-11-2011, 21:27
بله مشکل از دات نت بود
ولی من دنبال این بودم که بدون دات نت رو ویندوز xp کار کنه ولی مثل اینکه نمیشه بازم از همگی ممنونم:hi:

اینطور installer هارو بیشتر با برنامه های مخصوص این کار هست درست میکنند که بیشتر با Install Sheild این کارو انجام میدن چون من خودم این کگارو تا به حال انجام ندادم نمی تونم بیشتر راهنماییت کنم.
موفق باشی.

sajjad_AD
18-11-2011, 21:44
بازم ممنونم Altium عزیز

sajjad_AD
07-06-2012, 21:55
سلام دوستان :hi:
قابل توجه کسانی که می گن VB2010 بدون NetFrameWork نداریم و نمیشه :


کلید های ترکیبی Alt+F7 رو بزنین تا وارد پنجره ی تنظیمات و خواص پروژه تون بشین و بعد تو برگه ی Application تیک چکباکس Enable Application FrameWork رو بردارین :0013: :wink:

kavir
07-06-2012, 22:21
سلام دوستان :hi:
قابل توجه کسانی که می گن vb2010 بدون netframework نداریم و نمیشه :


کلید های ترکیبی alt+f7 رو بزنین تا وارد پنجره ی تنظیمات و خواص پروژه تون بشین و بعد تو برگه ی application تیک چکباکس enable application framework رو بردارین :0013: :wink:


در نسخه اکسپرس این وجود نداره؟
در ورژن 2008 که من نصب دارم نیست

behnam6500
08-06-2012, 00:58
سلام دوستان :hi:
قابل توجه کسانی که می گن VB2010 بدون NetFrameWork نداریم و نمیشه :


کلید های ترکیبی Alt+F7 رو بزنین تا وارد پنجره ی تنظیمات و خواص پروژه تون بشین و بعد تو برگه ی Application تیک چکباکس Enable Application FrameWork رو بردارین :0013: :wink:


خیر مهندس...

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

یا باید بصورت native برنامه نویسی بکنید... یا با برنامه هایی پروژه رو بدون فریم وورک بالا بیارید.

esisafa
08-06-2012, 01:09
منظور اینه که نمیشه به زمان ماشین ترجمه کرد برنامه رو مثل بورلند سی و برنامه به زبان مجازی تبدیل نشه که فریم ورک لازم باشه

behnam6500
08-06-2012, 01:41
منظور اینه که نمیشه به زمان ماشین ترجمه کرد برنامه رو مثل بورلند سی و برنامه به زبان مجازی تبدیل نشه که فریم ورک لازم باشه

تحت فریم وورک دات نت حتمن باید به il تبدیل شه و بعدش به زبان ماشین..

esisafa
08-06-2012, 01:47
برای برنامه نویسی که فریم وورک لازمه و به il هم تبدیل میشه. ولی میشه کاری کرد که بعدا به زبان ماشین تبدیل بشه تا در زمان اجرا به دات نت نیازی نباشه و مانند بورلند سی عمل کنه ؟

sajjad_AD
08-06-2012, 22:33
در نسخه اکسپرس این وجود نداره؟
در ورژن 2008 که من نصب دارم نیست

دوباره سلام مهندس زارعی من که فکر نکنم چنین تنظیماتی نداشته باشن,با دقت بیشتری زیرو روشون کنین شاید پیداش کنین

از صحبتای دوستان عزیزم هم چیزی نفهمیدم ولی کلا منظورم اینه که وقتی نت فریم ورک رو غیر فعال کنیم
برنامه مون بدون نیاز به دات نت تو xp کار می کنه و معلومه که با غیر فعال کردنش
از امکاناتی که دات نت در اختیارمون میذاشت دیگه نمی شه استفاده کرد :hi:

behnam6500
08-06-2012, 22:45
برای برنامه نویسی که فریم وورک لازمه و به il هم تبدیل میشه. ولی میشه کاری کرد که بعدا به زبان ماشین تبدیل بشه تا در زمان اجرا به دات نت نیازی نباشه و مانند بورلند سی عمل کنه ؟

دقیقن متوجه منظورت نشدم. ولی اگه منظورت اینه که مثل سی وقتی یه هدر رو ضمیمه میکنیم، در هنگام ساختن exe هدرها رو در داخل خود فایل میاره، خیر. چنین نیست.

برنامه هایی هستند که روی پروژه تغییراتی اعمال میکنه تا وابسته به فریم وورک نباشن!

جستجو کنید: Xenocode Postbuild 2007 Professional

sigma-mx
08-06-2012, 23:42
شما با چه زبانی برنامه مینویسید ؟ اگه با cpp هست یه راه حل ساده داره .... :0013:

esisafa
09-06-2012, 00:59
ببینید وقتی برنامه مینویسیم از توابع و کلاسهای دات نت فریم وورک استفاده میکنیم. وقتی که برنامه رو کامپایل میکنیم به زبان ماشین مجازی ماکروسافت تبدیل میشه. پس در زمان اجرا هم باید دات نت فریم وورک نصب باشه که اجرا بشه . در حال اجرای برنامه، ابتدا کدهای ماشین مجازی به زبان ماشین واقعی تبدیل میشه و بعد اجرا میشه.
حالا میگم میشه کاری کرد که در زمان کامپایل در نهایت کدهای زبان ماشین واقعی یعنی x86 تولید بشن، نه کدهای زبان ماشین مجازی ماکروسافت. تا با این کار در زمان اجرا نیازی به دات نت فریم وورک نباشه

behnam6500
09-06-2012, 01:03
نه راهی نداره.

ویژگی دات نت به همین msil هست! چرا که چند زبان مختلف میتونن در یک پروژه استفاده بشن. به خاطر همین اول به il بعد به زبان ماشین تبدیل می شوند.

sigma-mx
09-06-2012, 01:15
هیچ کس جواب ما رو نداد !! :sa:

آسونترین راه حل ..... من خودم به دلایل شخصی هرگز از زبانهای مایکروسافتی استفاده نکردم و نخواهم کرد !
اگه شما بجای ویژوال استودیو از بورلند c++ استفاده کنید دیگه این مشکلات رو ندارید !
یکی از بزرگترین محاسن کامپایلر های بورلند تولید کد native بود . این خیلی از مشکلات رو حل میکنه ..
البته باید از ورژنهای قدیمی (۳-۴ سال پیش)استفاده کنید چون اولا دیگه بورلندی وجود نداره یعنی کامپایلری ارایه نمیده . این کامپایلر فروخته شد و فعلا کامپایلر های c ساپورت نمیشه ولی قراره شرکت embracadero که اینو خریده هم کامپایلر C بده و هم دوباره ساپورت لینوکس و ... البته من اخبارم مال چند ماه پیشه .. قرار بود برای اندروید و لینوکس و مک و .... کامپایلر بده و بترکونه :o

esisafa
09-06-2012, 01:25
نه C# . اصلا c++ جزو دات نت نیست و برای خودش یه چیز دیگست. فقط با ویژوال استودیو هماهنگه

روش ماشین مجازی یک مد نوین برنامه نویسی هست. شاید بورلند هم به زودی تغییر مسیر بده به طرف ماشین مجازی
برنامه های اندروید روی ماشین مجازی اجرا میشن
جاوا ماشین مجازی داره
ماکروسافت ماشین مجازی داره

برنامه ای که با ماشین مجازی نوشته بشه هم روی x86 اجرا میشه هم x64 و هم ARM .روی widows و mac و linux و ... . چون به سخت افزار و سیستم وابسته نیست

behnam6500
09-06-2012, 01:36
البته c++ در دات نت هم هست.

#C برای چشم و هم چشمی با جاوا به وجود اومد!

esisafa
09-06-2012, 01:46
پس برنامه microsoft visual c++ 20xx redistributable چیه که جدا از دات نت نصب میشه و matlab هم رو بیس 2005 اون نوشته شده

sigma-mx
09-06-2012, 01:49
نه C# . اصلا c++ جزو دات نت نیست و برای خودش یه چیز دیگست. فقط با ویژوال استودیو هماهنگه

روش ماشین مجازی یک مد نوین برنامه نویسی هست. شاید بورلند هم به زودی تغییر مسیر بده به طرف ماشین مجازی
برنامه های اندروید روی ماشین مجازی اجرا میشن
جاوا ماشین مجازی داره
ماکروسافت ماشین مجازی داره

برنامه ای که با ماشین مجازی نوشته بشه هم روی x86 اجرا میشه هم x64 و هم ARM .روی widows و mac و linux و ... . چون به سخت افزار و سیستم وابسته نیست
بله این کار حسن هم داره مثل همین که شما گفتی . کم کم تمام زبانهای برنامه نویسی داره همین شکلی میشه و البته multi platform...
بورلند هم اون موقع هم native داشت هم .net . خوبیش این بود که میشد انتخاب کرد و با توجه به نیاز با هر کدوم کار کرد ...


البته c++ در دات نت هم هست.
بله . مایکروسافت اومد مثلا کاملش کنه دات نت رو اضافه کرد و همون قبلی رو هم گند زد بهش !! cpp تو بخش دات نت هیچ وقت مشهور نشد و کارایی رو که حدس میزدند بدست نیاورد ...


#C برای چشم و هم چشمی با جاوا به وجود اومد!
بله دقیقا . شاید خیلیا فکر کنند که جاوا رو از روی c# ساختن ولی عکس اینه !
قبلا تو یکی از این تاپیکها گفتم . c# یکی از اون دزدیهای آشکار مایکروسافته !! علاوه بر گرامر (syntax) که از جاوا - c - پاسکال و ... گرفته شده یه تعداد تکنولوژیهایی هم از دوروبر کش رفته و تو این زبان بکار برده ...
این برای مایکروسافت اصلا عجیب نیست ! از این کارا تا چشم میبینه انجام داده ... چیزی که مایکروسافت رو سرپانگه داشت فقط وکیل هاش بودند که مرتب تو دادگاه ها ازشون دفاع میکردن و قضیه رو یجوری با دادن غرامت و ... حل میکردن !
البته c# زبان قدرتمندی بیرون اومد و تونست خیلی از شکستهای قبلی رو پوشش بده ...

behnam6500
09-06-2012, 01:53
ولی از حق نگذریم، قدرتی که در چارچوب دات نت هست، در هیچ کامپایلر دیگری نمیتونید پیدا کنید!

دات نت وحشتناک قوی هست!