The Windows SDK Side by Side story
Beginning with our next public pre-release of the Windows SDK for Windows Server 2008, the Windows SDK will begin installing on a Side by Side basis. What does that mean for you? Right now, not very much. But by the time the next versions of Visual Studio and Windows Server are on your computer, it should make our SDK easier to use, manage and customize.
First, let me give you a little history that should help you understand what we’re doing and why. The Windows SDK was brought together in 2005 as the combined Platform SDK (PSDK) and .NET Framework SDK, encompassing both native and managed code development. It was a herculean task that resulted in a very high quality product. The next step was to manage our future SDK releases. Immediately on the heels of that first Windows SDK product in November 2006, we prepped to put out our Japanese product and our Update product. Though we had tentatively planned to share SDK components between those products, we opted due to time constraints to allow users to only have one of those three releases installed. In other words, if you install the Update and have the November 2006 release installed, you have to remove the November release before proceeding.
The other products we really started to work on are our releases for the next versions of Visual Studio and Windows Server. The blocking scenario discussed above didn’t work at all for those SDKs. For one thing, much of our work around the Visual Studio release is to get our MSIs chain installed with the VS install. If we had added a dependency on the user uninstalling the Windows SDK every time they installed VS, we would be considered as breaking VS, not a good thing.
Therefore the solution was to install the SDK versions side by side. This means that you can have multiple SDKs installed at the same time. It’s possible to have all of these installed in parallel with each other:
- PSDK February 2005 release
- NET Framework SDK for .NET Framework 2.0
- SDK for Windows Server 2003 R2
- Windows SDK November 2006
- SDK content for Visual Studio 2008
- Windows SDK for Windows Server 2008
You will always have the option to remove any or all of these releases, but we felt that allowing you to have each of these installed would give you the maximum amount of flexibility and customizability.
“Okay, Jason, I get this, but what about the specifics?”
Each release has:
- Separate install directories
- Separate Start Menu entries
- Separate RegKeys
- All common content is installed twice
And what will the install directories be?
- Windows SDK for Windows Vista
- \Program Files\Microsoft SDKs\Windows\v6.0
- Windows SDK Visual Studio 2008 Components
- \Program Files\Microsoft SDKs\Windows\v6.0A
- Windows SDK for Windows Server 2008
- \Program Files\Microsoft SDKs\Windows\v6.1
- Windows SDK for future updates to Windows Server 2008
- \Program Files\Microsoft SDKs\Windows\v6.1A
- Windows SDK for the next version of Windows
- \Program Files\Microsoft SDKs\Windows\v7.0
Why that naming scheme?
The first number is the major OS number. The second number is the minor OS number. The third number is the SDK increment.
We're interested in your feedback on this issue. Please post your comments and questions.
Jason Sacks
Setup PM, Windows SDK