Allow VS11 C++ applications to run on XP SP3 (original title: Allow MFC 11 to run in XP SP3)
Allow MFC 11 and CRT11 to run on Windows XP SP3
We will be adding this capability post Dev11 – please refer to the vcblog post for details: http://blogs.msdn.com/b/vcblog/archive/2012/06/15/10320645.aspx
thanks, and thank you for letting us know how important this was to you.
Doug Turnure, VS Program Manager
PS – Per request of a few folks, I’m going to go ahead and close this item out and release your UserVoice votes back so you can apply them elsewhere.
Finally, someone from Microsoft decided to speak: http://blogs.msdn.com/b/vcblog/archive/2012/04/18/10295093.aspx#10295438
Please reply to him!
I've looked at Visual Studio release patterns. It seems that Microsoft has always cared about the extended support final date, until now.
VS2008 - November 2007. Drops support for Windows 98 (mainstream support January 2004, extended support July 2006). Windows 98 market share when VS2008 was released: 1.0%.
VS2010 - April 2010. Drops support for Windows 2000 (mainstream support June 2005, extended support July 2010). Windows 2000 market share when VS2010 was released: 0.5%.
VS11 - Beta February 2012, RTM 2012. Attempts to drop support for Windows XP (mainstream support April 2009, extended support April 2014). Windows XP market share when VS11 Beta was released: 30.0%. Probabilistic calculation says it'll be 24% by the end of 2012.
This clearly shows that for the first time Microsoft is trying to drop Visual Studio support for an OS that still has extended support (let's ignore Windows 2000, the gap was only a few months).
NOTE: These market shares are given if linux, mac and mobile platforms are also considered. When considering Windows machines only, Windows XP had a market share of 36% in February 2012, by the end of 2012 it'll be 29%.
VC++11 must support Windows XP SP3 as a target platform.
Luna Lovelace commented
Windows XP support is a must and huge show stopper for us. If Microsoft does not allow VS 11 to run on XP I already know a significant number of licenses they will lose myself for our corporation. Windows XP by design is actually still modern, its just that Microsoft wants to kill it by not providing newer libraries on it. I doubt VS11 will have xp support as SQL 2012 which is already released does not work on it.
Our business and several partners are already planning a migration strategy to linux and mysql if MS won't support XP.
We don't mind buying a new XP license for a new product from microsoft called XP 2.0 if they would make such a thing. Basically a product like XP but with new libraries. A lot of businesses would do the same.
Please tell us, Microsoft commented
Made another Connect report: https://connect.microsoft.com/VisualStudio/feedback/details/737296/will-visual-studio-11-rtm-support-xp-or-not
This silence is unacceptable...
I like how this uservoice item is being ignored by Microsoft.
How about an official statement that says which platforms executables generated with VC++11 RTM will run on? Then the industry can either rule out VC++11 as a development tool or look forward to it. Stop pretending that you're still thinking what to do about this situation. If it's bad news, it's better we hear about it right now.
We simply can't ditch about 35% of our users. The share of XP is decrrasing fairly quickly, but it'll take another year or two to get to <5%. Until then, our applications must support XP.
We can, of course, continue to use VS10, but C++11 support would be appreciated by all devs here.
according to evildictaitor (probable Microsoft employee) and AndyC, we shouldn't care, and it's not really a problem.
if you feel differently be sure to post on that thread also.
I've not yet told my boss that VC11 is dropping support for XP. I'm not looking forward to giving him those news, because we're all itching to use the many improvements that VC11 offers. But we won't be able to, because we have too many customers still using XP.
There are no technical reasons behind not supporting XP. This is a decision of some high managers at Microsoft. Many people, including myself, have already investigated why the VC++11 executables don't run on XP. If you do everything on your own it only takes a few hours to make the executables run on XP, although it involves very hackish methods. It wouldn't take any longer than one day for a single developer at Microsoft to make the CRT run on Windows XP. It's definitely not a "we have no resources" situation.
I suggest people start posting on development forums about this. Perhaps Microsoft will start communicating with the community then, because right now they have completely ignored this uservoice item.
An upgrade to next Visual Studio is not going to happen if our customers can no longer run MFC programs in Windows XP. I think I speak for a lot of companies that are building MFC applications, since there is a significant number of customers still running Windows XP.
Of course, it is reasonable to drop Windows XP support in Visual Studio in some years. If you plan for that and are serious about the C++ renaissance, you should invest to upgrade MFC framework into "generation 2" using modern C++ style (maybe a whole new native framework reusing the best parts of todays MFC) in the meantime.
Maybe adding a toolset that would be an improved version of the one in VS 2010. The compiler would have some new C++ 11 features that does not require the new VS 11 CRT.
Something like using C# 3.0 on .NET 2.0 give you some extra benefits of C# 3.0.
Other than that, I'm not sure that it worth the trouble given than when VS 11 will be out, it will only remain about a year before XP support ends.
I think it might be better to invest time in fully supporting C++ 11 as soon as possible and when XP support will ends, the compiler would be fully C++ compliant.
XP is old. XP is ****. I wish XP were dead. But it isn't. That's the unfortunate truth.
What it comes down to is the blatant fact that Microsoft has yet to convince us that removing XP support was purely a technical decision. As seen from the workarounds available at http://tedwvc.wordpress.com, VS11 binaries *can* run on XP, albeit in a rather hacky/ugly manner. From the looks of it, it feels as if the entire decision was made by folks high up in the food chain just for the sake of dumping XP.
On one hand, Microsoft is actively pushing the C++. The GoingNative conference was great and the talks were all fantastic. C++11 is similarly great and full of great features.
On the other hand, Microsoft is pushing C++11 far into the future for many of us developers. We would love to use the ranged based for loop, atomics, improved lambdas, and all that, but we can't dump 30% of our customers. It is just not realistic.
In addition, it is simply wrong for Microsoft to put such a burden on 3rd party developers. Had Microsoft started with Office, Windows Live, etc. (yes, I'm aware that IE9 doesn't run on XP), we wouldn't need to be having this discussion at all.
Microsoft, do the Right Thing.
Guys, take your time to vote for this: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2715716-rename-allow-mfc-11-to-run-in-xp-sp3-idea
We'll have to skip VS11 (at least) without XP compatibility.
I personally love the improvements in VS11 (well, okay, the UI could be more desktop-ish/colorful), but the lack of XP support is rather severe. A large portion of our customers still use XP. And they are using XP because of you -- not us. You, Microsoft, should have started phasing out XP by dropping support in Office, Windows Live, Zune, etc. You cannot put this burden on 3rd party developers.
Please reconsider this decision.
J. Robert commented
We cannot upgrade for a few years without XP support.
further discussion of the native multi-targeting "workaround" and lack of coverage see:
@Mike: Hopefully we'll reach a Microsoft response soon.