وقتی ورژن بالاتر Visual Studio عرضه می شود، باید نصبش کرد! چرا که نمی شود از امکانات و عملکرد بهبود یافته اش چشم پوشی کرد. به طور مثال زمانی که از ویژوال استودیو 2008 به 2010 کوچ کردم، کد محاسباتی ای داشتم که فایل Release آن در ورژن 2008، برای تعداد مشخصی از محاسبات در 100 گام زمانی، حدود 300 ثانیه زمان صرف میکرد. به عبارتی برای هر گام زمانی، حدود 3 ثانیه. زمانی که همان پروژه را مجدد با استفاده از ویژوال استودیو 2010، Build کردم و اجرا کردم، همان محاسبات با فایل Release نسخه ی 2010 حدود 170 ثانیه طول کشید! باور نکردنی بود! حدود 1.7 برابر سریعتر شده بود!
در حال حاضر، ویژوال استودیو 2012 چند وقتیست که در دسترس قرار گرفته است. تصمیم گرفتم نسخه 2012 را در کنار نسخه 2010 بر روی لپتاپم نصب کنم تا امکانات و محیطش را تست کنم. اما یک مشکل اساسی پیش آمد!
توجه : اکیداً پیشنهاد میشود که در حالتی که دو نسخه ی متفاوت ویژوال استودیو را به طور همزمان نصب میکنید، نخست نسخه ی قدیمی و سپس نسخه ی جدید را نصب کنید. یعنی در مورد کنونی ما، اول نسخه 2010 و سپس نسخه ی 2012! در صورتی که برعکس عمل کنید، مایکروسافت قول نمیدهد که همه چیز به خوبی پیش برود!
یک پروژه ای که به زبان ++C در نسخه 2010 نوشته بودم، بر روی 2012 باز کردم و آن را Build کردم! یک خطای عجیب غریب حالمان را گرفت :
fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt
هیچ مشکلی در کد نبود! این پروژه بر روی نسخه 2010 به خوبی کار میکرد ولی در نسخه 2012 کامپایل نمیشد! با یک جستجوی طولانی و تست کردن روش های مختلف، راه حل پیدا شد!
راه حل خطا کامپایل ++C در استفاده همزمان از Visual Studio 2010 & 2012
فایل cvtres.exe را از این پوشه کپی کنید:
…\Program Files\Microsoft Visual Studio 11.0\VC\bin
و در این پوشه Paste کنید:
…\Program Files\Microsoft Visual Studio 10.0\VC\bin
و جایگزین فایل قبلی کنید. بدین ترتیب فایل cvtres.exe ای که در نسخه 2010 بود حذف کردیم و فایل مربوط به نسخه 2012 را با آن جایگزین کرد!
حالا می توانید در هر دو نسخه ویژوال استودیو 2010 و 2012، پروژه های خود را بدون مشکل کامپایل کنید :)
توجه : قبل از شروع کار، از فایل cvtres.exe ای که در نسخه 2010 و همچنین در نسخه 2012 هست، جداگانه Backup بگیرید که اگر خرابکاری کردید، جبران شدنی باشد!
با سلام وعرض ادب
وتشکر ازبابت مقاله کامل شما
در ویژوال استادیو 2012 چطور میتونم ردیف اعداد رو روشن کنم که مثلا وقتی ارور میده میگه error in line 25 فورا برم سراغ خط 25 و نخوام دونه به دونه خطوط رو بشمورم
با تشکر
منتظر جواب وراهنمایی پربار شما هستم
@رها امیر چرمهینی, سلام، خواهش میکنم :)
تو صفحه ای که لیست error ها رو نشون میده، بر روی error مورد نظرتون 2 بار کلیک کنید، میره سر همون خط.
موفق باشید
سلام من مشکل کامپایل کردن برنامه نوشته شده در ویژوال بیسیک 2010 رو دارم
می گه برنامه نمی تونه کامپایل بشه