Microsoft Windows SDK
Developer(s) | Microsoft Corporation |
---|---|
Stable release | 7
/ August, 2009 |
Operating system | Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 |
Type | API |
License | Various |
Website | Windows SDK Developer Center on MSDN |
This article contains instructions, advice, or how-to content. (September 2009) |
Microsoft Windows SDK, Platform SDK and .NET Framework SDK are software development kits from Microsoft that contain header files, libraries, samples, documentation and tools required to develop applications for Microsoft Windows and .NET Framework.[1]
The difference between these three SDKs lies in their area of specialization: Platform SDK specializes in developing applications for Windows 2000, XP and Windows Server 2003. .NET Framework SDK is dedicated to developing applications for .NET Framework 1.1 and .NET Framework 2.0. Windows SDK is the successor of the two and supports developing applications for Windows Vista, Windows 7, Windows Server 2008, .NET Framework 3.0 and .NET Framework 3.5.[2]It contains extensive documentation and nearly 1000 samples.[citation needed]
Obtaining the SDK
Windows SDKs are available free on the Microsoft Download Center, in ISO and Web-download formats. Users can install the entire SDK or choose to install only some SDK components, such as code samples demonstrating only native development or only the tools for managed development. Some Windows SDK components are also included in Microsoft Visual Studio. The latest Windows SDK is the Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1, released August 24, 2009. This SDK release supports Windows 7, Windows Server 2008, .NET Framework 3.5, and Windows Vista SP1 and is compatible with Visual Studio 2008 and Visual Studio 2005 SP1, including Visual Studio Express Editions.
Versions
Microsoft SDK version release history[3]
Version | Windows SDK Version Number | Build Number | Release Date | Notes |
---|---|---|---|---|
Microsoft Platform SDK July 2002 | ?? | ?? | 2002-07 | |
Microsoft Platform SDK August 2002 | ?? | ?? | 2002-08 | |
Microsoft Platform SDK October 2002 | ?? | ?? | 2002-10 | |
Microsoft Platform SDK February 2003 Edition | ?? | ??? | 2003-02 | |
Microsoft Platform SDK for Windows XP SP2 | ?? | ?? | 2004-08 | |
Windows Server 2003 R2 PSDK | ?? | 5.2.3790.2075.51 | 2006-03-14 | |
.NET Framework 2.0 SDK | ?? | 2.0.50727.42 | 2006-11-29 | Does not include the Platform SDK |
Windows Vista Update & .NET 3.0 SDK | v6.0 | 6.1.6000.16384.10 | 2007-03-22 | First unified .Net and Platform SDK |
Included in Visual Studio 2008[4] | v6.0a | ?? | 2007-11-19 | |
Windows Server 2008 & .NET 3.5 SDK | v6.1 | 6.0.6001.18000.367 | 2008-02-05 | |
Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP 1 | v7.0 | 6.1.7600.16385 | 2009-07-24 |
Targeting Windows Vista development with the Windows SDK
Starting with Windows Vista, the Platform SDK has been replaced by the Windows SDK. The change of name is to better reflect the content included, and to offer the documentation, samples, build environment and tools needed to develop Windows applications all in one place. Also, the SDK for .NET Framework 3.0 (previously known as WinFX) /.NET Framework 3.5 and .NET Framework 2.0 (which is also now a part of .NET Framework 3.0) is included in the Windows SDK. The Tablet PC SDK and the Windows Media SDK (Windows Media Player 11 SDK, Windows Media Format 11 SDK and the Windows Media Device Manager 11 SDK) are also included. Thus, all the APIs which ship with Windows Vista / Windows Server 2008 and the latest compilers are now integrated into the Windows SDK. However, the .NET Framework 1.1 SDK is not included since the .NET Framework 1.1 does not ship with Windows Vista. Also, the Windows Media Center SDK for Windows Vista ships separately.
The Windows SDK allows the user to specify where the SDK will be installed and what components will be installed where. This new SDK integrates better with Visual Studio, so multiple copies of tools are not installed. Information shown can be filtered by content, such as showing only new Windows Vista content, Win32 development content, .NET Framework development content; or by language or a specific technology.
SDK support for older operating systems
A developer might want to use an older SDK for a particular reason. For example, the Windows Server 2003 Platform SDK released in February 2003 was the last SDK to provide full support of Visual Studio 6.0. Some older PSDK versions, including the February 2003 SDK can still be downloaded from the Microsoft Download center [5]; others can be ordered on CD/DVD.
64-bit development
The most recently released Windows SDK for Windows Server 2008 and .NET Framework 3.5 contains the updated x86, x64 and Itanium (IA-64) Visual Studio 2008 compilers.
The earlier Windows SDK Update for Windows Vista contains the x86 and x64 Visual Studio 2005 SP1 VC++ compilers.
The Platform SDK also contains the resources (tools, documentation, samples, etc.) and compilers needed for 64-bit development on x86, x64 and Itanium (IA-64) platform architectures.
Documentation
The Windows SDK documentation includes the following:
- Manuals documenting managed code development
- Manuals documenting Win32 development
- "New in Windows Vista" topics
- All SDK documentation is part of the online and disc-based MSDN Library
Tools, headers and libraries
The Windows SDK contains the following:
- For Win32 development:
- 1,700 Headers
- 281 Libraries
- 110 Tools
- For .NET (managed code) development:
- 14 Reference Assemblies supporting .NET, Tablet PC, Windows PowerShell, MMC, etc.
- 33 Intellisense Files
- 70 .NET 2.0 Tools + 10 .NET 3.0 Tools
- For Visual Studio 2005/2008 integration
- Utilities to enable Visual Studio 2005/2008 to easily use Windows SDK headers and libraries
- Visual Studio 2005/2008 Wizards for creating Windows Media Player applications
SDK sample content
The SDK contains samples in the following topic areas:
- 430 Windows Presentation Foundation samples
- 140 Windows Communication Foundation samples
- 60 Windows Workflow Foundation samples
- 200 New to Windows Vista (Win32/COM-based) samples
- 23 Cross technology samples
Windows SDK samples
.NET Framework (managed code) samples
Microsoft .NET Framework samples are installed with the SDK documents, providing a mechanism to view and browse samples in context of the rest of the documents. These samples fall into three main categories:
- Compiled sample applications users can download and run, ranging from Hello World type applications to more complex samples.
- Tutorial-like examples, often presented in topics which teach how to build a sample application, taking users from a blank screen to a running application.
- Code snippets which are embedded in topics throughout the documentation set. The most common example of this type of code is found in API reference topics, which often contain small code blocks showing the syntax and usage of the members of an API.
Sample document topics contain options for viewing and copying sample source files and for downloading sample projects as ZIP files to a user’s computer. Each sample topic contains at least one source code selection box that lists all the sample files. There is one box for each programming language provided by the sample. If a user is viewing this documentation on the Web instead of in local Help, a link to download the sample is provided.
The .NET Framework samples are also available outside the documents, in .ZIP format installed to Program Files\Microsoft SDKs\Windows\[version number]\samples. This content can be deselected during SDK setup. The .ZIP files provide a mechanism to extract large subsets of samples at once.
Win32 (unmanaged code) samples
The Windows samples demonstrate Windows operating system features primarily using native code. These unmanaged Win32 samples are not included in the documentation. They are installed as loose files to subdirectories of \Program Files\Microsoft SDKs\Windows\[version number]\samples. This content can be deselected during SDK setup. A few samples with some managed code (PowerShell, Tablet PC) install with the Win32 samples. The Win32 samples directory layout for the Windows SDK is:
\Begin \Com \DataAccess \Multimedia \NetDS \Security \SysMgmt \TabletPC \Web \WinBase \WinUI
Building the samples
This article contains instructions, advice, or how-to content. (September 2009) |
Building samples under Windows Vista or later operating systems should be done in a directory outside of Program Files to which there is write access to avoid issues with file and registry virtualization. This makes it possible to maintain an unmodified copy of the SDK samples. To build from the command line:
- Copy the sample to a working folder not under \Program Files.
- Open the Windows SDK CMD shell (Start> All Programs> Microsoft Windows SDK> CMD Shell).
- Build the sample from the command line as follows:
- Build a makefile by typing nmake
- Build a .csproj file by typing msbuild mysample.csproj /p:platform=[win32|x64|IA64]
- Build a .vbproj file by typing msbuild mysample.vbproj /p:platform=[win32|x64|IA64]
- Build a .sln file by typing msbuild mysample.sln /p:platform=[win32|x64|IA64]
- Build a .vcproj by typing vcbuild mysample.vcproj /p:platform=[win32|x64|IA64]
It is important to specify the build platform when using MSBuild, otherwise the first platform listed in the solution or project file will be built.
See also
References
- ^ "Windows SDK: Download Windows Server 2008 SDK and more". Microsoft Developer Network. Microsoft Corporation. Retrieved 6 December 2009.
- ^ "Windows SDK: Which SDK do I install?". Microsoft Developer Network. Microsoft Corporation. Retrieved 6 December 2009.
- ^ http://msdn.microsoft.com/en-us/windowsserver/dd146047.aspx
- ^ Microsoft Windows SDK Blog
- ^ Windows Server 2003 PSDK Full Download with Local Install