Can I compile legacy MFC applications with Visual Studio 2008? - visual-studio

I maintain several old MFC applications using Visual Studio 7 and I was considering upgrading to Visual Studio 2008. After reading this question, I realise that the Express edition will not be able to do this.
Does anyone know if I will be able to compile old MFC apps with VS2008 Standard edition or will I need to get the more expensive Professional edition ?

You'll have everything you need to build an MFC application with Standard edition. Be warned, though, if it is an application of any size or complexity it will not simply be a matter of upgrading the project/solution files and hitting F5. There are plenty of breaking changes between VS7 and 2008, most introduced in the V8 compiler. Roll up your sleeves.

Yes, the Standard edition includes support for MFC/ATL.
FYI you can compare the features

Related

What version of Visual Studio 2008... Does "Visual Studio Tools for Applications 2.0" INCLUDES vs2008?

I have Visual Studio 2010 Professional installed. But for a client I do need Visual Studio 2008 (to avoid some upgrades that are note compatible with vs2010)
It is my job's notebook, so everything must be original and legal. And both, the client and my boss want to avoid licences costs. ANYWAY... it seems that my notebook already has some version of vs2008, I need to know if it is too muche reduced or if it will work to develop.
I can open a vs2008 that seems pretty much the same, also the about screen. But at "Add or Remove Programs" I just only have "Visual Studio Tools for Applications 2.0"
Finnaly when I run the app, it works, but the code is not recognize, it is shown as it is notepad.
Here are some screenshots that may help... THANKS ALL!!
VSTA is sort of a replacement for VBA, i.e. you can use VS to write .NET code to extend and automate thrid-party applications that are designed to support it. It appears that that is the only VS 2008 component that you have installed so you cannot open VB or C# projects or any of that stuff. If you want a legal copy of VS 2008 that you don't have to pay for then you'll need to look at an Express edition, although that may lack some features that you need. 2008 Express editions are hard to come by now too, as they are not offered for download any more by Microsoft.
What are these non-upgradeable parts of your project?

Can I install visual c++ 2010 express edition with visual Studio 2010 professional already installed?

I want to do so because intellisense option for clr console application is not working in visual studio 2010..
Yes, you can. They will run side by side.
However, if you have professional installed, wouldn't it be better to update the install and add c++ to it?
There is no Intellisense support for C++/CLI in Visual Studio 2010 (including in SP1 and the Express edition).
I've been using Visual Assist X from Whole Tomato software for the last few weeks and am very happy with their Intellisense support. From the research I did, it appears that theirs is about the best going (Resharper for example does not support C++).
No, this is not going to solve your problem. The IntelliSense parser is exactly the same in the Express edition, it also doesn't support parsing C++/CLI code. You'll need to find the installer for the VS2008 Express edition. That's going to be quite difficult, you cannot get it from Microsoft anymore. Or you'll have to bear and grin it until the next version for Visual Studio, the Microsoft team promised it will be supported again.
Do keep in mind that you are not writing C++ code, C++/CLI is a very distinct language. There isn't much point in writing complete console mode apps in C++/CLI, you might as well use C#. There's an Express edition for that as well, IntelliSense works.

If I have Both Visual Studio 2008 and 2010, do have I have to keep both

I recently downloaded VS 2010 trial, the new version is more easy to use.
I have VS 2008 installed, If i decide to use VS 2010 in the future, do I still have to keep VS 2008? Is there any compatibility issue with it?
You would need to keep VS2008 installed if you target Windows CE (via Compact Framework, native smart device projects, etc.)
http://msdn.microsoft.com/en-us/library/sa69he4t.aspx
Also if you want to write native applications that run on versions of Windows before XP SP3 and Server 2003 SP2, this is no longer possible with VC++ 2010. The same applies to managed code written for the .NET Framework 4.0, but you can still use Framework 3.5 with VS2010 for projects with managed code only.
And Intellisense for C++/CLI code is gone (MS promises to remedy that in the future, whether a service pack or the next version I cannot say).
If you open a VS 2008 solution or a project in VS 2010 it will be converted to VS 2010 and you will not be able to open it in VS 2008.
If that is not a problem then you don´t have to keep VS 2008, unless you are using a addin or some other third party application with VS 2008 that is not compatible with VS 2010.
Edit:
Look at Ben Voigt´s answer for information for which version have support for different platforms.
VS2010 allows you to specify the target framework that you'd like to develop on. There should be no reason to keep VS2008 installed unless you've become accustom to some handy plugins :)

Are there reasons to use Visual Studio 2005 when 2008 is available?

What reasons are there for continuing to run Visual Studio 2005 when 2008 is available?
I work on a project where the environment is dictated to be Visual Studio 2005. Are there good technical reasons for this? Can I use Visual Studio 2008 and build an app that is 100% indistinguishable from the same app build with Visual Studio 2005?
I think there are two questions here
Can I use VS2008 to create apps compatible with VS2005
Generally speaking the answer is yes. I do this frequently with several internal and external hobby projects with great success. You may encounter an odd ball tooling issue but so far none has cropped up for me.
Is there any reason not to use VS2008 over VS2005
The best reason I can think of is a large developer environment. Once you make the switch to using VS2008, it will upgrade all of the projects in your solution to the new format. This will no longer be usable for anyone using VS2005. They will be forced to upgrade or maintain parrallel versions of the project file. In general, I find it's best to upgrade in groups rather than individuals.
We are currently migrating from 2005 to 2008. If you open and save a project while in VS2008, you will not be able to open that solution/project in VS2005 (at least we couldn't find a way easily). If the rest of your team is still in 2005, you should stay there. You CAN, however set up a project in 2008 and keep it compatible with 2005... as long as everyone opening it is using 2008. You keep the .NET version at 2.5, and don't convert most of the stuff that it wants you to convert.
The only time you CAN'T migrate to 2008 is if you are using a report project and SQL Server 2005. VS2008 will only let you integrate a report project with SQL Server 2008. What did we do?
We migrated to 2008 and all the Team Server stuff, except for the database and reporting. Those we kept on 2005, and so I end up having to open both versions on a daily basis... but that's why they pay me the (somewhat??) big bucks!
Not really, the new version of Visual Studio has the compilers for the new language versions and all the libraries for .NET 3.5. Since they all target the 2.0 CLR and Visual Studio 2008 allows you to target previous versions of the framework I don't see any reason to stick with 2005.
The obvious answer is: No license for Visual Studio 2008.
My company is "saving money" but not upgrading...
One reason might be interaction with existing products.
I write code for AutoCAD in C#.
They (Autodesk) "officially" support VS 2005 but I've been using 2008 since...well 2008.

Mixing Visual Studio versions OK?

Can Visual Studio 2005 Team edition for Developer coexist peacefully with Visual Studio 2008 Database edition on my machine? Are they completely separate applications that won't interfere in any way with each other?
Update:
What about Visual Studio 2008 Developer edition? If I install this on the same machine as 2008 Database edition, will it create two different 'VS 2008' installs or will they merge together as a single Visual Studio 2008 with the combined functionality?
2008 is side by side compatible with 2005. Also, be sure to apply 2008 SP1 as it will change the icon slightly so that you can tell the difference.
You can have both installed and make use of both. However, there are some caveats:
Opening a vs2005 solution with vs2008 will update to solution so that it can no longer be used in vs2005.
You can only have one default debugger on the machine, so they may fight with each other.
It's generally easier to get everyone up to vs2008 and just use that to target .Net2.0 when needed, but certainly not impossible for them to co-exist.
Generally speaking, yes that are completely separate applications. I've not tried the specific combination you mention, but I have had any number of combinations of VS 2003, VS 2005, VS 2008, and VS 2005 Express Editions all running without issue.
If VS2005 and VS2008 are mixed together on your development team, I believe you can have a VS2005 solution and a VS2008 solution and they can both load the same VS2005 projects. I'm not sure if you lose anything there (other than the VS2008-specific stuff like 3.5) but I believe it will work.
yes.
I use Visual Studio 6, Visual Studio 2005 and Visual Studio 2008 concurrently without any issues. [That too with all of them integrated with VSS]
Yes, they are completely separate apps that won't interfere with each other. I've been running both for over a year now.

Resources