Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is the dropped support for Windows XP in VS11 comparable to prior Visual Studio releases?

Edit note: After a seemingly enourmous amount of bad feedback MS got from their customers regarding the drop-XP-stunt, they have announced that a patch will be released that'll allow to build executables for XP. So the base for this Q is no lonher really there, but I think it collects some very interesting infos.


As established here: What is special about the executables compiled with Visual Studio 11 which results in that the executables cannot be executed on Windows XP?

and in this Connect bug/issue: https://connect.microsoft.com/VisualStudio/feedback/details/690617, Visual Studio 11 (planned release 2012) is planned to no longer support Windows XP.

That means you cannot create a native C++ executable that can be executed on Windows XP. (One reason being that the new CRT will use Windows API calls that are only available on Windows Vista and higher.)

In one answer, Anders writes:

They seem to drop support for older systems in every new release of VS (NT4,2000,XP) ...

What interests me now is whether this move by Microsoft to drop Windows XP support completely from VS11 C++ can actually be compared to prior releases.

What I mean is, when was support for which OS (NT3.5 / NT4 / 2000sp6 // Win95 / Win98 / ...) completely dropped from Visual C++. (and "what part" of Visual C++ -- the compiler, the CRT, the Windows SDK?)

For example, I think I know that VC6 is the last version of VS that can be used to create executables that run on Windows NT4. I also seem to remember that the dropped support for Win2k had more to do with the Windows SDK you are using than with the actual compiler or CRT, but I'm not sure.

Is there a good resource that shows which MS compilers in which setting can produce compatible code for which OS versions? Is the timing of VS11 (year 2012) no longer supporting a OS that is widely installed (but no longer sold) comparable to prior releases?


One point of interest is that we're in the middle of the shift from C++03 to C++11, and if you're stuck with Windows XP and VC10, the you're stuck with the limited (and partially non-standard) C++11 support it has to offer.

like image 225
Martin Ba Avatar asked Dec 12 '11 15:12

Martin Ba


People also ask

Is Visual Studio compatible with Windows XP?

If you're using a version of Visual Studio later than Visual Studio 2019 version 16.7, the redistributable files won't work on Windows XP. To get a copy of the redistributable files that support Windows XP, you'll need a Visual Studio account. Use the account you use to sign in to Visual Studio.

Does Visual Studio 2012 support Windows XP?

Hardware requirements. Visual studio 2012 may not work on Windows XP Or Windows Vista. You need windows 7, Windows 8, Windows Server 2008 R2 Or Windows Server 2012.

Are considered deprecated in the latest versions of Visual Studio?

Deprecated in Visual Studio 2022 Visual Studio no longer registers the . dsw and . dsp file extensions as Visual Studio file types. To upgrade a project with these extensions, first use Visual Studio 2019 to upgrade the project to modern Solution ( .


1 Answers

I think it makes sense to compare VS release dates against when the Windows versions became unsupported, rather than when the Windows versions were released.

Once an OS reaches the end of extended support it stops getting security updates and anyone still running it can be considered insane and ignored (outside of very special cases). Before then, it seems legitimate (albeit annoying at times) for people to still use old OS versions and expect software to support them (although vendors, both third-parties and Microsoft themselves, can choose not to, of course).

From Wikipedia, this is when each version of Windows became (or will become) unsupported by Microsoft:

  • Jan 2020: Windows 7
  • Apr 2017: Windows Vista
  • Apr 2014: Windows XP
  • Jul 2010: Windows 2000
  • Jul 2006: Windows ME
  • Jul 2006: Windows 98
  • Jun 2004: Windows NT 4
  • Dec 2001: Windows 95
  • Dec 2001: Windows NT 3

Tying that to the details in the existing answer:

  • VS in 2012 dropped Windows XP despite it being supported until 2014.
  • VS in 2010 dropped Windows 2000 which expired soon after.
  • VS in 2007 dropped Win98/ME both of which already expired.
  • VS in 2005 dropped Win95 and NT4 both of which which had already expired.

So it looks like VS2012 is the first version that will drop support for an OS which itself will still supported for at least another year. Assuming all these dates are correct (I haven't double-checked them; did this mostly for my own curiousity).

like image 137
Leo Davidson Avatar answered Nov 05 '22 14:11

Leo Davidson