Quantcast
Channel: Games for Windows and the DirectX SDK
Viewing all articles
Browse latest Browse all 72

A Brief History of Windows SDKs

$
0
0

A common source of confusion for Windows development is the Windows SDK naming scheme. For example: Can someone use the "Windows SDK for Windows Server 2008 and .NET Framework 3.5" to target Windows XP? 

The recommendation is for developers to use the latest version of the Windows SDK they can for access to the latest technologies and APIs, given the restrictions of your projects development platform, target platforms, and toolset. Figuring out this matrix of choices is a bit challenging, so this blog post spells out some key differences.

For a more complete version history, you might want to check out Wikipedia.

Q: What SDK am I using currently?

Most developers get a copy of the Windows SDK or Platform SDK with their Visual Studio installation.

Visual Studio 2013

Windows 8.1 SDK

Windows 7.1A SDK for "xp_110" Platform Toolset

VS 2013 Express for Windows only includes a subset of the full Windows 8.1 SDK

Visual Studio 2012

Windows 8.0 SDK

Windows 7.1A SDK for "xp_110" Platform Toolset

VS 2012 Express for Windows only includes a subset of the full Windows 8.0 SDK

Visual Studio 2010

Windows SDK 7.0A

Similar to Windows SDK for Windows 7 and .NET Framework 3.5 SP1 (August 2009)

Visual Studio 2008

Windows SDK 6.0A

Similar to Windows SDK for Windows Vista Update and .NET Framework 3.0 (February 2007)

Visual Studio 2005

Similar to Windows Server 2003 SP1 Platform SDK (April 2005)

VS 2005 Express did not include the Platform SDK

Q: What platform does a given Windows SDK target?

Given the naming scheme for the Window SDKs, this is probably the most confusing aspect of choosing a Windows SDK. The easiest way to describe it is to list the last releases which allowed you to target a given OS.

  • Windows SDK 7.1 (aka Windows SDK for Windows 7 and .NET Framework 4.0) was the last release to support targeting Windows XP and Windows Server 2003.
  • Windows Server 2003 SP1 Platform SDK (April 2005) was the last release to support targeting Windows 2000.

Q: What platform does a given Window SDK support for development?

Another aspect is that the Windows SDK often supports a smaller set of platforms for development (i.e. it can be installed on) compared to those it can target (i.e. deploy applications to).

  • Windows 8.1 SDK requires Windows 7 SP1, Windows 8, or Windows 8.1
  • Windows 8.0 SDK requires Windows 7 or Windows 8.x

Q: What compiler toolset does a given Windows SDK support?

Not all Windows SDKs can be used with all versions of Visual Studio. Changes in language features, /analyze SAL annotation, and other aspects of the compiler toolset are assumed as the baseline for a given Visual Studio release--usually that version that comes with a given Visual Studio release is the 'oldest' one it supports.

  • Windows 8.0 SDK and Windows 8.1 SDK support Visual Studio 2010 or later.
  • Windows 7.1 SDK supports Visual Studio 2005 or later.
  • Platform SDK (February 2003) was the last release to support Visual Studio 6.

Related: DirectX SDKs of a certain age, Windows 7.1 SDK, Windows 8.0 SDK, VS 2012 Update 1


Viewing all articles
Browse latest Browse all 72

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>