-
September 24th, 2012, 01:00 PM
#1
Migrating VC++ 6.0 to a newer Visual Studio
It's time to start thinking about, and planning for, migrating my development system to a new platform.
Current development system:
WinXP SP3
Visual Studion Pro 6.0 SP6
C++/MFC applications
I have two main programs that I continue to update and lots of smaller programs. All are developed with VC++ 6.0 and MFC. All programs are statically linked. The two main programs run on all Windows version (95, 98, ME, NT 4.0, 2000, XP, Vista, and 7) and I want to continue supporting all of them. When Win8 arrives I'll support it too.
I need to start thinking and planning to move to a new platform, at least Win7 but maybe Win8, and a new development environment (Visual Studio 2012?). I would like to know what kind of grief I'm going to encounter. Here are my questions and comments (no particular order):
1. I like the VC++ 6.0 IDE. Does the new Visual Studio product also have an equivalent IDE?
2. So far I'm using C++/MFC and I want to continue with that.
3. I'm using Visual SourceSafe 6.0 for ALL of my projects - even some that are not code based. Does the new Visual Studio integrate with Visual SourceSafe 6.0 or migrate my SourceSafe database to a newer SourceSafe?
4. Can the new Visual Studio still produce code that will run on all Windows platforms listed above (95 through Win8)?
5. Can I simly open an exiating VC++ 6.0 project with the new Visual Studio and have it converted?
6. I have many macros that I developed to aid in my code writing. Can they be used in the new Visual Studio?
7. I use the MSDN DVD for online help. Does the new Visual Studio still come with MSDN (or equivalent) documentation?
8. If there are different versions of Visual Studio, what version should I be looking for?
-
September 24th, 2012, 01:57 PM
#2
Re: Migrating VC++ 6.0 to a newer Visual Studio
Answer to the first two items:
1. I like the VC++ 6.0 IDE. Does the new Visual Studio product also have an equivalent IDE?
The IDE is different. It's too much to state the differences, but the IDE is different.
2. So far I'm using C++/MFC and I want to continue with that.
VC 6.0 is a non-ANSI compliant C++ compiler, (C++ became ANSI standardized in 1998, after VC 6.0 existed). Therefore code that compiles in VC 6.0 may fail to compile in any version of Visual Studio that is less than 10 years old.
In other words, if you coded something illegal, ill-formed, or something that is obsolete, you may not get away with it in Visual Studio. Hopefully the compiler will let you know, but many times, the code is still legal C++ syntax, but then the newer compiler exposes the bug that wasn't exposed when using 6.0
Regards,
Paul McKenzie
-
September 24th, 2012, 01:58 PM
#3
Re: Migrating VC++ 6.0 to a newer Visual Studio
1. Of course.
2. Well, it's called VC++, right?
3. Time to move to something modern, like TFS or maybe SVN or GIT. Don't you think?
4. Sure. Just don't use APIs that require newer builds. BTW, VS2010 requires minimum Vista, though and some later update will enable support for WinXP SP3.
5. You need to convert the workspace and project files to a new solution file (as the workspace is now called) and project files. VS has wizards to do that for you.
6. AFAIK yes, but I never used VS macros.
7. Yes, it does, but nowadays online documentation is so accesible.
8. Definitely not earlier than VS2008. So far this is my preferred release.
-
September 24th, 2012, 02:54 PM
#4
Re: Migrating VC++ 6.0 to a newer Visual Studio
Originally Posted by Mike Douglas
3. I'm using Visual SourceSafe 6.0 for ALL of my projects - even some that are not code based. Does the new Visual Studio integrate with Visual SourceSafe 6.0 or migrate my SourceSafe database to a newer SourceSafe?
Although VS2010 can use Visual SourceSafe 6.0 as a source control system, it likes much more the Visual SourceSafe 2005 version (fortunately, it has almost the same UI as the v.6.0)
Originally Posted by Mike Douglas
6. I have many macros that I developed to aid in my code writing. Can they be used in the new Visual Studio?
only very simple VC6.0 macros can still work in VS2010. Usually the most of macros needs to be upgraded or just redesigned.
Victor Nijegorodov
-
September 24th, 2012, 03:17 PM
#5
Re: Migrating VC++ 6.0 to a newer Visual Studio
It's not going to be straightforward. There are significant differences in the STL implementation. Expect compilation errors and code changes to be required. There are some minor differences in CString's implementation that may require code changes. for loop variable scope has changed. That may cause you problems.
The biggest difference in the IDE is that the wizards aren't there any more. The functionality still exists, but its implementation is quite a bit different, and it was kind of frustrating figuring out where some of the features had moved to.
It's worth going through it, but unless your code is very simple, prepare to spend a bit of time getting everything to compile again.
-
September 24th, 2012, 08:20 PM
#6
Re: Migrating VC++ 6.0 to a newer Visual Studio
Hi Paul.
I got to thinking after I posted and realized that, of course, the newer Visual Studio has an ICE. I hope it is somewhat similar to VC++ 6.0 because I like that IDE.
I'm somewhat prepared for some code modifications because my original VC++ 6.0 code will probably not compile cleanly. I don't think it is too far off but you never know.
Thanks,
Mike
-
September 24th, 2012, 08:31 PM
#7
Re: Migrating VC++ 6.0 to a newer Visual Studio
Originally Posted by VictorN
Although VS2010 can use Visual SourceSafe 6.0 as a source control system, it likes much more the Visual SourceSafe 2005 version (fortunately, it has almost the same UI as the v.6.0)
only very simple VC6.0 macros can still work in VS2010. Usually the most of macros needs to be upgraded or just redesigned.
Will SourceSafe 2005 import/convert SourceSafe 6.0 database so I don't lose all of my source code history?
And my macros are pretty simple. It shouldn't be a major headache to upgrade or redesign them.
Mike
-
September 24th, 2012, 08:41 PM
#8
Re: Migrating VC++ 6.0 to a newer Visual Studio
Originally Posted by GCDEF
It's not going to be straightforward. There are significant differences in the STL implementation. Expect compilation errors and code changes to be required. There are some minor differences in CString's implementation that may require code changes. for loop variable scope has changed. That may cause you problems.
The biggest difference in the IDE is that the wizards aren't there any more. The functionality still exists, but its implementation is quite a bit different, and it was kind of frustrating figuring out where some of the features had moved to.
It's worth going through it, but unless your code is very simple, prepare to spend a bit of time getting everything to compile again.
I figured there would be code "fixes" to get the project to compile cleanly. One of the biggest changes may be the definition of INT. It's 32-bit with VC++ 6.0 but may be 64-bit on the newer Visual Studio.
You said that the Wizards don't exist any more. The one Wizard that I'm awar of is "Class Wizard". Does it still exist?
Mike
-
September 24th, 2012, 08:48 PM
#9
Re: Migrating VC++ 6.0 to a newer Visual Studio
[QUOTE=cilu;2086135]4. Sure. Just don't use APIs that require newer builds. BTW, VS2010 requires minimum Vista, though and some later update will enable support for WinXP SP3.
7. Yes, it does, but nowadays online documentation is so accesible.QUOTE]
I'll still have to build 32-bit applications to support ALL Windows versions (Win95 through Win8) but it's an application that doesn't have to worry too much about speed performance - just reliability.
The online documentation (i.e. Internet-based) is certainly available but it isn't as easy to get to as DVD-based documentation.
Mike
-
September 25th, 2012, 12:51 AM
#10
Re: Migrating VC++ 6.0 to a newer Visual Studio
Originally Posted by Mike Douglas
Will SourceSafe 2005 import/convert SourceSafe 6.0 database so I don't lose all of my source code history?
I"d rather say the 2005 version uses the same SourceSafe 6.0 database so you won't lose anything.
Victor Nijegorodov
-
September 25th, 2012, 01:51 AM
#11
Re: Migrating VC++ 6.0 to a newer Visual Studio
-
September 25th, 2012, 07:11 AM
#12
Re: Migrating VC++ 6.0 to a newer Visual Studio
Originally Posted by Mike Douglas
You said that the Wizards don't exist any more. The one Wizard that I'm awar of is "Class Wizard". Does it still exist?
Mike
The functionality is still there, but it's in quite a different form. It's been a long time and I don't remember exactly what Class Wizard looked like, but I remember being pretty frustrated trying to find how to do what it did, and I remember posts from others having similar problems. Once you figure it all out it's pretty easy though.
-
September 25th, 2012, 07:34 AM
#13
Re: Migrating VC++ 6.0 to a newer Visual Studio
Class wizard was removed in VS2002, but it was brought back in VS2010.
-
September 25th, 2012, 08:00 AM
#14
Re: Migrating VC++ 6.0 to a newer Visual Studio
Basically, migrating a project from 6.0 to a newer version of Visual Studio should not rise much problems.
Fixing eventually errors/warnings and adjusting some newer project settings/options should not take more time than time wasted in this discussion thread.
Do you really, really and really need migrating your VS6.0 project to a newer Visual Studio version?
If yes, go ahead and just do it.
If not, let it as it is.
Last edited by ovidiucucu; September 25th, 2012 at 08:04 AM.
-
September 25th, 2012, 10:34 AM
#15
Re: Migrating VC++ 6.0 to a newer Visual Studio
Originally Posted by ovidiucucu
Basically, migrating a project from 6.0 to a newer version of Visual Studio should not rise much problems.
Fixing eventually errors/warnings and adjusting some newer project settings/options should not take more time than time wasted in this discussion thread.
Do you really, really and really need migrating your VS6.0 project to a newer Visual Studio version?
If yes, go ahead and just do it.
If not, let it as it is.
Actually, it not necessarily updating my VC++ 6.0 to a newer Visual Studio. That's really only a small part. The biggest thing is that in a year or so WinXP will become unsupported by MS. And from what I've read it is a pain in the a** to install VC++ 6.0 on Win7 (and probably Win8). I was thinking it is probably smarter to upgrade Visual Studio at the same time as moving to a newer Windows OS.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|