Microsoft Windows SDK

Microsoft Windows SDK（簡稱Windows SDK或者SDK）是微軟公司出品的一個軟體開發包，向在微軟的Windows作業系統和.NET框架上開發軟體和網站的程式設計師提供頭文件、庫文件、示例代碼、開發文檔和開發工具。

## 歷史

微軟每次發布一個主要版本的Windows，都會發布對應的開發工具以使得開發人員能夠調用新的作業系統的應用程式開發接口(API)。在Windows 98之後，這個開發工具包被命名為為Platform SDK。在Windows Vista的SDK推出時，這個產品改名為Windows SDK。

和Windows一樣，微軟每次更新.NET框架，也會發布一個對應的.NET框架 SDK。在Windows 2008版本的Windows SDK推出之後，.NET框架SDK被整合到Windows SDK。

截至2013年，最新版本的Windows SDK是Windows 8.1 SDK，支持面向Windows Vista/Server 2008或更高版本的Windows的程序的開發，以及兼容Visual Studio 2010或者以上的版本，包括速成版本。

## 版本

MSDN技術資源庫的在線版網站包含Windows SDK的在線版本。

Microsoft SDK for Windows 3.0是最後一個收費版本的Windows SDK。之後的Windows SDK電子版均為免費，但是購買CD、DVD等基於物理介質的版本時仍需運費和處理費用。

單獨發布的電子版Windows SDK可以在微軟下載中心免費下載，有在線安裝和本地安裝兩種版本。在安裝Visual Studio時也可以選擇同時安裝電子版Windows SDK。Visual Studio的速成版本包含一個精簡版本的離線版Windows SDK。

對於非PC版本的Windows，微軟也發布對應版本的SDK，例如Windows Mobile SDK和Tablet PC SDK。

2003年2月的Platform SDK是第一個支持64位開發的Platform SDK。Platform SDK for Windows Server 2003 SP1則是第一個支持AMD64的Platform SDK。

Microsoft Windows SDK for Windows 7 and .NET Framework 4 (ver7.1)在安裝前應該卸載版本大於10.0.30319的VC++ x86/x64 runtime/redistributable。否則在Microsoft Windows SDK安裝過程中將會報錯。

名字｜版本號｜Build號｜發布日期｜下載｜注釋

Microsoft Windows Software Development Kit｜3.1｜未知｜未知｜未知

Microsoft Windows Software Development Kit｜3.11｜未知｜未知｜未知

Microsoft Win32 Software Development Kit｜3.1｜未知｜未知｜未知

Microsoft Win32 Software Development Kit｜3.5｜未知｜未知｜未知

Microsoft Win32 Software Development Kit｜3.51｜未知｜未知｜未知

Microsoft Win32 Software Development Kit｜4.0｜未知｜未知｜未知

Microsoft Platform SDK April 1999｜未知｜未知｜1999-04｜未知｜MSDN subscription CD-ROM disc. Last Platform SDK to officially install on Windows 95

Microsoft Platform SDK September 1999｜未知｜未知｜1999-09｜未知｜MSDN subscription CD-ROM disc. Last Platform SDK to fully support Visual C++ 5.0

Microsoft Platform SDK February 2001｜未知｜未知｜2001-02｜未知

Microsoft Platform SDK June 2001｜未知｜未知｜2001-06｜未知｜MSDN subscription CD-ROM disc. Last Platform SDK to officially develop for Windows 95. (Does not officially install on Windows 95)

Microsoft Platform SDK August 2001｜未知｜5.1.2601.0｜2001-08｜MSDN subscription CD-ROM disc. Last Platform SDK to unofficially develop for Windows 95. (Does not officially install on Windows 95)

Microsoft Platform SDK November 2001｜未知｜5.2.3590.2｜2001-11

Microsoft Platform SDK May 2002｜未知｜5.2.3639.1｜2002-05

Microsoft Platform SDK July 2002｜未知｜5.2.3663.0｜2002-07

Microsoft Platform SDK August 2002｜未知｜5.2.3672.1｜2002-08

Microsoft Platform SDK November 2002｜未知｜5.2.3718.1｜2002-11

Microsoft Platform SDK February 2003｜未知｜5.2.3790.0｜2003-02｜Last version with VC6 support and latest version with Windows 95 and Windows 98 support.

.NET Framework SDK Version 1.1｜未知｜1.1.4322.573｜2003-03-29｜Included in Visual Studio 2003. Does not include the Platform SDK.

Microsoft Platform SDK for Windows XP SP2｜未知｜5.1.2600.2180｜2004-08

Windows Server 2003 SP1 Platform SDK｜未知｜5.2.3790.1830.15｜2005-05-02

Windows Server 2003 R2 Platform SDK｜未知｜5.2.3790.2075.51｜2006-03-14｜Also suggested by MS to work with VS6

.NET Framework 2.0 Software Development Kit｜未知｜2.0.50727.42｜2006-11-29｜Included in Visual Studio 2005 Professional. Does not include the Platform SDK.

Microsoft Windows Software Development Kit for Windows Vista and .NET Framework 3.0 Runtime Components｜v6.0｜6.0.6000.16384｜2006-10-30｜The C++ compilers in this SDK release support the /analyze key.

Microsoft Windows Software Development Kit Update for Windows Vista｜v6.1｜6.1.6000.16384.10｜2007-03-22｜First unified .NET and Platform SDK. Does not support Visual Studio .NET 2003 and Microsoft Visual C++ Toolkit 2003

Included in Visual Studio 2008｜v6.0a｜6.1.6723.1｜2007-11-19

Windows SDK for Windows Server 2008 and .NET Framework 3.5｜v6.1｜6.0.6001.18000.367｜2008-02-05｜.NET Framework 3.5

Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1｜v7.0｜6.1.7600.16385｜2009-07-24

Included in Visual Studio 2010｜v7.0a｜6.1.7600.16385｜2010-04-12｜.NET Framework 4. Works only with Visual Studio 2010 and not Visual Studio 2010 Express. This is also the last version to include offline documentation.

Microsoft Windows SDK for Windows 7 and .NET Framework 4｜v7.1｜7.1.7600.0.30514｜2010-05-21｜It is the latest version that officially supports Windows XP target.

Included in Visual Studio 2012 Update 1 (or later)｜v7.1A｜7.1.51106｜未知｜未知｜Introduces the "v110_xp" platform toolset

Microsoft Windows SDK for Windows 8 and .NET Framework 4.5｜v8.0｜6.2.9200.16384｜2012-11-15｜.NET Framework 4.5, Windows Store apps and Integrated DirectX SDK

Included in Visual Studio 2012｜v8.0A｜8.0.50727｜未知｜未知

Windows Software Development Kit (SDK) for Windows 8.1｜v8.1｜8.100.25984.0｜2013-10-17｜Windows 8.1, .NET Framework 4.5.1, Windows Store apps and Integrated DirectX SDK

Included in Visual Studio 2013｜v8.1A｜8.1.51636｜未知｜未知｜Includes the "v120_xp" platform toolset

Windows Standalone SDK for Windows 10｜v10｜10.0.10240.0｜2015-07-29｜Also included in Visual Studio 2015

Windows Standalone SDK for Windows 10, Version 1511｜v10｜10.0.10586.0｜2015-11-30｜Also included in Visual Studio 2015 Update 1

版本｜刪除特性

Windows SDK for Windows 7 and .NET Framework 3.5 SP1｜、capicom.dll (CAPICOM is deprecated)、iacom.dll、ialoader.dll、msistuff.exe、perflibmig.exe、permcalc.exe、secutil.exe、windowssideshowvirtualdevice.exe (replaced by DeviceSimulatorforWindowsSideShow.msi)、wpfperf.msi (now included in the Windows Performance Toolkit suite)、xamlpad.exe (XAMLPad)

Windows SDK for Windows 7 and .NET Framework 4｜、UISpy.exe (Replaced by newer tools)、Wpt_arch.msi、Managed code samples (Moved to Code Gallery )、DExplore document viewer (Can be separately installed)

Windows Software Development Kit (SDK) for Windows 8｜、Command-line build environment, including: Windows SDK Platform Toolset Visual C++ Compilers and C Runtime (CRT) ** Windows SDK Configuration Tool、Tools and reference assemblies for versions of the .NET Framework earlier than 4.5、Apatch.exe、Bind.exe、Checkv4.exe、Consume.exe、DeviceSimulatorForWindowsSideShow.msi、Err.exe、FDBrowser.exe、FXCopSetup.exe、Guidgen.exe、Make-Shell.exe、MDbg.exe、Mpatch.exe、MSIZap.exe、PTConform.exe、ReBase.exe、sddlgen.exe、setenv.cmd、SetReg.exe、SoapSuds.exe、Sporder.exe、TcpAnalyzer.exe、TSPDesigner.exe、UTL2IDL.exe、ValidateSD.exe、VirtualLightSensor.exe、WinDiff.exe、WpfPerf.exe、All Windows samples (moved to Code Gallery )、Microsoft Help Viewer、IntelliSense XML documentation comments for the .NET Framework reference assemblies

Windows Software Development Kit (SDK) for Windows 8.1｜Nothing

Windows Software Development Kit (SDK) for Windows 10｜Nothing

## 內容

Windows SDK文檔包含如下內容：

- 核心SDK
- .NET框架SDK
- IIS SDK
- Internet Development SDK (IE SDK)
- MDAC SDK
- Windows Installer SDK
- WMI SDK
- Windows Media Service SDK
- Microsoft Speech SDK
- DirectShow SDK

除了.Net SDK之外，SDK文檔主要是以C語言規範提供，但是SDK函數的調用方法和語言無關，僅受程式語言的類型系統限制

另外，SDK也會安裝用於說明各種API用法的示例，以及用於輔助開發、調試、發布軟體的工具。

## 影響

Windows API也被稱為Windows SDK函數或者簡稱SDK函數。相對於.Net框架這樣的類庫來說，SDK函數被認為是底層的API。直接調用Windows SDK而不是用別的類庫的開發被稱為SDK編程。在SDK這一層開發工作枯燥、耗時較長，難度也較高，Visual Studio這樣的開發環境以及MFC和.NET框架這樣的類庫可以被用來加速面向Windows的軟體的開發。