I'm developing a MFC application on VS 2013.
My application didn't execute on WIN XP 32bit when I built it with WIN32 Platform Option.
I dealt with this problem by setting 'v120_xp Platform Toolset'.
While doing that, I found 'v120_xp' item was added on 'v_120_xp Platform Toolset'.
I want to to know the difference between v120_xp and v120 on VS2013?
Does anybody know why they are divided and how those two work differently?
The v120_xp
is the C++ toolchain that targets XP SP3. The other, v120
targets above XP. The XP toolchain generates code and uses the system function calls limited to XP SP3.
From the MSDN articles and blogs, the internal differences are tied to improvements in the platform that are not available on XP;
The code generated for XP SP3 still works (generally) on the higher version of the OS, but you can't use the v120
tools to target XP, only Vista and above. Originally, they were not going to support XP, but because of the demand, it was added (during the public testing phase IIRC).