Microsoft Visual C++ supported target Windows versions

Microsoft Visual C++ supported target Windows versions – Supported Platforms – Target Platforms.

MSVC versions:

  • 6.0 Visual C++ 6.0.
  • 7.X Visual C++ .NET 2002, 2003 (7.0, 7.1).
  • 8.0 Visual C++ 2005.
  • 9.0 Visual C++ 2008.
  • 10.0 Visual C++ 2010.
  • 11.0 Visual C++ 2012.

6.0

7.X

8.0

9.0

10.0

11.0

Windows 95

ok

ok

hack

Windows 98

ok

ok

ok

Windows Me

ok

ok

ok

Windows 2000

ok

ok

ok

ok

ok¹

Windows Server 2000

ok

ok

ok

ok

ok¹

Windows XP

ok

ok

ok

ok

ok

ok²

Windows Server 2003

ok

ok

ok

ok

ok

ok²

Windows Server 2003 R2

ok

ok

ok

ok

ok

ok²

Windows Vista

ok

ok

ok

ok

ok

ok

Windows Server 2008

ok

ok

ok

ok

ok

ok

Windows 7

ok

ok

ok

ok

ok

ok

Windows Server 2008 R2

ok

ok

ok

ok

ok

ok

Windows 8

ok

ok

ok

ok

ok

ok

Windows 8 RT / ARM / METRO

ok

Windows Server 2012

ok

ok

ok

ok

ok

ok

6.0

7.X

8.0

9.0

10.0

11.0

NOTES:

  • This information is provided “as is”.
  • It is possible to build for any lower target (in some configurations), but it is not officially supported.
  • Most of this information is acquired by testing and analyzing System Requirements of various Microsoft Visual C++ Redistributable Packages
  • Visual C++ 2005 supports Windows 2000 beginning from Service Pack 3.
  • Visual C++ 2005 SP1 does not support Windows 98 and Me, but compiled exe usually works on these OSes.
  • Visual C++ 2008 supports Windows 2000 beginning from Service Pack 4.
  • Visual C++ 2010 supports Windows XP beginning from Service Pack 3. Source: Microsoft Visual C++ 2010 Redistributable Package (x86) and Visual Studio 2010 – Visual C++ Supported Platforms
  • Windows 95 is Windows 95 and Windows 95 Second Edition.
  • Windows 98 is Windows 98 and Windows 98 Second Edition.

¹ To target Windows 2000 must use Visual Studio Multi-Targeting (VS 2008 toolkit). Using VS 2010 tools will not run on Windows 2000.

² To target Windows XP and Server 2003 use Multi-Targeting. Microsoft promised to release “an update to Visual Studio 2012 that will enable C++ applications to target Windows XP”.

Updated Aug 15, 2010.
Updated Sep 5, 2012.

Opening tab separated file in Excel: Excel has detected that ‘file.txt’ is a SYLK file, but cannot load it

You try to open a tab separated file in Excel and get error ‘Excel has detected that ‘test.txt’ is a SYLK file, but cannot load it. Either the file has errors or it is not a SYLK file format. Click OK to try to open the file in a different format.’

The file looks something like:
ID DATA
1 data1
2 data2

The problem is caused by the first field name, that is ‘ID’ in this case. Change it to something else and problem will go away.

Update: there is a Microsoft Support article “SYLK: File format is not valid” error message when you open file that describes this behavior.

Update 2: SYmbolic LinK (SYLK)

Change timezone with TZ environment variable in Windows

If your program uses one of the following MFC or CRT function, then you can change timezone using TZ environment variable:

  • CTime::GetLocalTm
  • CTime::Format
  • COleDateTime::operator=
  • ctime
  • _wctime
  • _tctime
  • _ctime64
  • _wctime64
  • _tctime64
  • mktime
  • _mktime64
  • _utime
  • _wutime
  • _tutime
  • _utime64
  • _wutime64
  • _tutime64

For example, to set the TZ environment variable to correspond to the current time zone in Germany, enter the following on the command line:
set TZ=GST-1GDT
This will add environment variable TZ with value ‘GST-1GDT’.

More about TZ environment variable:
Specifying the Time Zone with TZ
MSDN _tzset from Time Management