Prev: Does Visual Studio 2008 synchronize printf
Next: Mailing follow-ups (was: Re: VC++ 6.0 vs VC++ 8.0)
From: Liviu on 30 Mar 2010 17:54 "verappan" <alvyn(a)gawab.com> wrote... > Dear friends, > > I am a fresher in VC++ and I joined a new company where the > development environment is Visual Studio 6.0. > I asked to our team about upgrading 6.0 to 8.0 and I don't get a good > reponse for that. > The project manager told that there no much difference between 6.0 and > 8.0. > Anybody please correct me on this, if this is wrong. > Because strongly believe that 12 yr old application and its upgraded > version contains definitly be huge change. > > Also I got the information from other team members that, if the > application is developed in VC++ 6.0, then there will not be much > dependencies on the output EXE and no need to install .Net Runtime > environment to run the EXE. > > Could anyone pleas provide here the advantages and disadvantages > of VC++ 6.0 and VC++8.0. I second the points made already, most of them about the advantages of newer versions (better language compliance especially in C++ and templates areas, more up-to-date libraries, support for the latest sdk's, active support and maintenance updates from MS etc). One plus for v6 which wasn't mentioned (and is probably not important to most users) was the ability to directly export a makefile, so it was easier to keep builds in sync between the IDE and the command line (not to mention that the bare v6 compiler binaries could essentially be xcopy'd to a separate build machine or vm without a full install). However, back to your question, you don't provide enough details for a real answer. Just because the newer versions are a decade more recent, that alone does not make them automatically "better". One example, v10 which is around the corner was dubbed "the new v6", so maybe not all old version were that bad to begin with ;-) Seriously now, it depends a lot on what areas your group works in. If for example you develop mostly C or C++ with little templates then the upgrade may not make a striking difference. Or, if you depend on other 3rd party libraries tied to certain versions of the compiler, then the upgrade may even be painful. The reason you quote other team members for having given you about the ..net dependency is wrong - as pointed already, you can happily build native/unmanaged applications in all later versions. Yet, the reason you give for upgrading just because "it's newer" is not very convincing, either (and won't make you sound too professional, for that matter). If, instead, you can point out specifics to them e.g. "we could use covariant return types here, but v6 doesn't support that" you might stand a better chance to be heard and given due consideration. Liviu
From: Richard on 30 Mar 2010 21:41 [Please do not mail me a copy of your followup] "Liviu" <lab2k1(a)gmail.c0m> spake the secret code <OGLV2OF0KHA.4636(a)TK2MSFTNGP06.phx.gbl> thusly: >One plus for v6 which wasn't mentioned (and is probably not important to >most users) was the ability to directly export a makefile, so it was >easier to keep builds in sync between the IDE and the command line >(not to mention that the bare v6 compiler binaries could essentially be >xcopy'd to a separate build machine or vm without a full install). FYI, you don't need a Makefile to do command-line builds. Just run devenv.com with the appropriate switches. I've run lots of command-line builds for VS.NET without ever needing a Makefile. -- "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download <http://legalizeadulthood.wordpress.com/the-direct3d-graphics-pipeline/> Legalize Adulthood! <http://legalizeadulthood.wordpress.com>
From: Liviu on 30 Mar 2010 23:04 "Richard" <legalize+jeeves(a)mail.xmission.com> wrote... > "Liviu" <lab2k1(a)gmail.c0m> spake the secret code ... thusly: > >> One plus for v6 which wasn't mentioned (and is probably not >> important to most users) was the ability to directly export a >> makefile, so it was easier to keep builds in sync between the >> IDE and the command line (not to mention that the bare v6 >> compiler binaries could essentially be xcopy'd to a separate >> build machine or vm without a full install). > > FYI, you don't need a Makefile to do command-line builds. Just run > devenv.com with the appropriate switches. I've run lots of > command-line builds for VS.NET without ever needing a Makefile. I only said that the v6 option to export a makefile made it _easier_, not that the v7+ lack thereof made it impossible ;-) I am aware of devenv (and vcbuild/etc), but it's not the same thing. For a quibble, but in my experience the command-line devenv builds slower at the cmd line vs. the exact same build run from the IDE. It used to be the reverse case up to v6, with nmake and makefiles which spawned cl/link/etc directly. But, again, that's just a minor thing. The other distinction is that a makefile is an open, documented "blueprint" of the build, and a normal part of a source distribution. Microsoft's compiler/linker/etc switches (as used in a makefile) are officially and clearly documented. In contrast, a vcproj file is a closed-form script of the same build process, but with no official documentation or changelog between versions. The actual commands and switches can be looked up in the resulting buildlog.htm, of course, yet that's not something one would normally consider a source, put under version control, or include with a source package. Liviu
From: verappan on 31 Mar 2010 03:24 Dear friends, Thanks for the response. I understand that the latest versions of visual c++ is far supirior than VC++6.0. I got some points for the discussion :) The project I am working is a Medical Image Viewer in win32 and MFC There is not much usage of templates and there are some 3rd party libraries inlcuded. And the client OS(where the output exe is running) is mostly Win2k and XP. These are the background of the project that I am working. As an ethusiastic user, I am still expecting more comments based on these information. Thanks and Regards Vayanad
From: Richard on 31 Mar 2010 05:42
[Please do not mail me a copy of your followup] "Liviu" <lab2k1(a)gmail.c0m> spake the secret code <ecbSx7H0KHA.6108(a)TK2MSFTNGP06.phx.gbl> thusly: >I am aware of devenv (and vcbuild/etc), but it's not the same thing. For >a quibble, but in my experience the command-line devenv builds slower at >the cmd line vs. the exact same build run from the IDE. Are you counting the time it takes to launch the IDE? Otherwise its not a fair comparison. >The other distinction is that a makefile is an open, documented >"blueprint" of the build, and a normal part of a source distribution. vcproj and sln files are a normal part of source distribution. It is well documented how to build a project or a collection of projects using command-line switches for devenv. If you're using project files, you probably aren't opening them in a text editor and changing text in order to change project settings; you're changing those settings in the IDE using the GUI. If for some reason you need to make programmatic changes to projects, you can use the automation interface and scripts to do that. I've been using VS since VC6 (1998) and I've never needed Makefiles for my VS projects. I've automated builds and done all sorts of things with projects/solutions and never needed Makefiles. -- "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download <http://legalizeadulthood.wordpress.com/the-direct3d-graphics-pipeline/> Legalize Adulthood! <http://legalizeadulthood.wordpress.com> |