The Windows Software Development Kit (SDK) for Windows 8.1 contains headers, libraries, and tools you can use when you create apps that run on Windows operating systems. You can use the Windows SDK, along with your chosen development environment, to write Windows Store apps and desktop apps for Windows 8.1 as well as Windows 8, Windows 7, Windows Vista, Windows Server 2012, Windows Server 2008 R2, and Windows Server 2008.
The Windows SDK also includes the Windows App Certification Kit 3.3 (Windows ACK) to test your app for the Windows 7, Windows 8, Windows 8.1, and Windows 8.1 Phone certification program.
The Windows SDK no longer ships with a complete command-line build environment. You must install a compiler and build environment separately. If you require a complete development environment that includes compilers and a build environment, you can download Visual Studio 2013, which includes the appropriate components of the Windows SDK. To download the SDK and install it on another computer, click the download link and run the setup. Then in the Specify Locationdialog box, click Download the Windows Software Development Kit for installation on a separate computer.
Threading APIs are now available for use with Windows Store and Windows Phone apps. For a full list of Win32 APIs supported by Windows Store apps, see Win32 and COM for Windows Runtime apps reference.
*You can call these functions from a Windows Phone Store app, and your app will certify, but the functions have no effect on Windows Phone.
The Windows SDK and Windows App Certification Kit have been updated to allow you to use Win32 and Berkley sockets in Windows Store apps. During app development you can now use the socket APIs. Updated APIs are listed in the Win32 and COM for Windows Runtime apps reference.
A new command line tool has been provided in the DirectX remote MSI package that allows for capturing a graphics trace on a remote system.
The latest version of the Windows App Certification Kit is an in-place update for all earlier versions. Version 3.3 introduces support for pre-certification testing of Windows 8.1 Phone apps prior to the final Windows Phone Store submission. With this release, the Windows App Certification Kit now supports the following app types:
The Windows SDK now includes support that enables the Visual Studio "Graphics Debugging" and "Graphics Frame Analysis" features for both Windows 8.1 and Windows Phone 8.1.
Note: These features require Visual Studio 2013 Update 2 or later. Installing the April 2014 or later Windows SDK with Visual Studio 2013 RTM or Update 1 will cause undefined behavior when using Visual Studio graphics debugging features. All other Visual Studio functionality is unaffected.
Graphics Debugging in Visual Studio lets you trace the D3D calls being made by your app and then replay those calls, inspect parameters, textures, and other graphics objects to diagnose rendering issues. Traces can be taken on Windows PCs, simulators, Windows Phone emulators, or devices and played back on different hardware.
Graphics Frame Analysis runs on a graphics trace and gathers baseline timing for the D3D draw calls as well as performs a set of experiments by modifying various graphics settings and produces a table of timing results. You can use this data to understand graphics performance issues in your app and review results of the various experiments to identify opportunities for performance improvements.
The Windows SDK includes the reference assemblies, tools, headers, and libraries needed to build apps that target the .NET Framework 4.5.1.
A new ARM Kits policy (Microsoft-Windows-Kits-Secure-Boot-Policy .p7b) comes with the Windows SDK. To run the Windows SDK tools on an ARM device, make sure the ARM Kits policy is installed. For instructions, see ARM Kit policy information.
Device manufacturers and service operators can use this tool to develop a metadata package for their devices and services. This metadata package provides info that appears to Windows users, including the photorealistic icon and name for the device or service.
The DirectX SDK is now part of the Windows SDK. Many tools and components that originally shipped in the DirectX SDK now ship as part of the Windows SDK. These tools support building great DirectX apps for Windows using only a single SDK. If you need to use the DirectX SDK for access to legacy components, we’ve provided directions for using it with the new Windows SDK through Visual Studio 2012.
The d3dcompiler_47.dll now ships with Windows 8.1. If you’re targeting Windows 8.1, you no longer need to ship the DirectX Redist.
We changed or removed these items from this version of the Windows SDK.
The Windows SDK no longer ships with a complete command-line build environment. Instead, the Windows SDK requires a compiler and build environment to be installed separately.
The Windows SDK supports the .NET Framework 4.5.1 development tools and reference assemblies. Tools and reference assemblies for previous versions of the .NET Framework aren't included in this version of the Windows SDK. You can still download and install the Microsoft Windows SDK for Windows 7 and .NET Framework 4 to get tools and reference assemblies for previous versions of the .NET Framework.
We have moved all Windows samples to the Windows Dev Center. You can find hundreds of demos that you can filter by technology, programming language, and development platform. Samples are available for Windows Store apps and desktop apps.
You can find other examples in the MSDN Code Gallery.
Windows 8.1, Windows 8, Windows 7
Windows Server 2012, Windows Server 2008 R2
x86, x64, ARM (Windows Store apps)
Note: The Windows SDK cannot be installed directly on the ARM architecture. To build apps for the ARM architecture, you can install the Windows SDK on an x86 or x64 platform.
To install the .NET Framework 4.5 SDK feature, you first need the .NET Framework 4.5 redistributable package installed. This release of the Windows SDK doesn't include a .NET Framework Redistributable Package. You can download it from Microsoft Download Center.
To make your Windows SDK setup experience run smoothly, first install the latest updates and patches from Microsoft Update before you install the Windows SDK.
Depending on how you set it up, you’ll need 10 megabytes (MB) to 1 gigabytes (GB) hard disk space to install the Windows SDK. Make sure the computer you’re installing on has the minimum required disk space, otherwise, setup will return an error.
When you use Programs and Features to uninstall the SDK, most of the components are uninstalled automatically. However, a few shared components might need to be uninstalled separately. Here’s some guidance for uninstalling those shared components.
Note: If you uninstall components that other apps use, you’ll run into problems. For example, Visual Studio 2013 also uses the Windows SDK.
Windows SDK for Windows 8.1 upgrades the Windows App Certification Kit, AppVerifier, and Windows Performance ToolKits. If you install the Windows SDK for Windows 8.1 on a PC that includes the Windows SDK for Windows 8, the tools will be upgraded and moved to the Windows Kits\8.1 folder.
You might not be able to uninstall AppVerifier, a tool for testing and verifying the correctness of running apps, separately. To remove it from your computer, uninstall the App Certification Kit or uninstall the Windows SDK.
This tool, designed for manual testing of UI automation, does not run on ARM devices in Windows 8.1.
If you install the Windows SDK for Windows 8.1 on a PC with the Windows SDK for Windows 8, and then uninstall it, the upgraded tools (Windows App Certification Kit, AppVerifier and Windows Performance ToolKits) stay in the 8.1 folder. To recover the Windows 8 version, repair the Windows SDK from Control Panel.
If you want to use the WinRT metadata functions, you must install the .NET Framework SDK 4.5 to have access to the complete set of necessary header files. The WinRT metadata functions are RoGetMetadataFile, RoParseTypeName, and RoResolveNamespace in RoMetadataResolution.h. Also, you need the IMetaDataDispenser definition in RoMetadataApi.h and MetaDataGetDispenser in RoMetadata.h.
The Windows ACK installs Te.Service, which allows Windows ACK to perform automated tasks in a secure manner; for example, in the context of a standard user. It also enables other functionality, like, remote task execution across PCs. The service only starts when the kit calls it during execution and stops after the call is complete. When the service starts, it opens firewall ports and doesn’t prompt the user for consent. Though Windows ACK does stop the service and closes the port when it’s done.
Test fails when a developer package is updated from an earlier version to a newer version. Uninstall the earlier package before running Windows ACK on the updated package.
To run Windows ACK on a Windows 8.1 ARM PC, the Kits policy needs to be installed. The setup for Windows ACK on Windows 8.1 ARM will install the policy on your PC. If you need to manually install the policy, refer to the ARM Kits policy information page. Note that Kits policy is required to be installed only once on a PC. The Kits policy is not required when you need to run Windows ACK on a PC running Windows 8 ARM.
Find previous versions of the Windows SDK.
Get more downloads for the Windows desktop.
Find community support for questions related to the Windows SDK.
Get help with developing desktop apps.