the forums categories all appear to be tool-centric, so this question is not precisely on-topic, but...
how does one install multiple versions of the platform sdk each version appears to remove the previous version.
<rant>
in theory this should never be necessary as each sdk should be fully backward compatible but in fact some are not backward compatible. e.g., the libraries with the latest sdk don't work with vb6. the oft-seen response from MS has been "upgrade to a newer development environment", but this is does not address the real problem - namely, that the sdk installation, which should be nothing more than a bunch of directories with includes and libraries, is in fact an enormous "protect me from myself" disaster. MS seems to have forgotten "Keep It Simple, Stupid".
</rant>

Installing Multiple Versions of Platform SDK
D. H.
I spoke to the main setup dev about this specific issue. The transition from WinServ 2003 to WinServ2003 SP1 does indeed require an uninstall before the new version is installed, and there is no way to hack the build. There is a hack to install separate versions of the Windows and WinFX SDKs side by side, but this isn't available for the Server 2003 release for several reasons:
- We made internal changes to the SDK release process that required changes to the structure of the build. Since the layouts and processes are so different between RTM and SP1, it was almost impossible for us to allow the builds to be backwards compatible. You may ask why we couldn't just allow for side by side installation, which leads to reason number two.
- Because this release was an SP release, it is a required update. The fixes between the RTM and SP were major enough that it was felt that these updates needed to overwrite the previous releases.
The best solution I can offer, unfortunately, is to install the builds on different machines, which is obviously not great advce.
If you can give me more details on the problems you describe, I'll be happy to bring them up the food chain and see if I can get some traction on the issue.
Thanks for posting.
SmartGy101
All that said, I can recommend two solutions. One is to install each SDK to a different location on your machine. I know this is awkward, and will cause you to need to open a seperate SDK window for each release, but you can install side by side to different directories. The other solution is, if you're looking for just documentation, to look in the MSDN Library, where VS6 content sits happily alongside the VS .NET content.
I hope this helps.
Jason Sacks
Setup Program Manager, Windows SDK
Ron Sexton
the problem is that two (specific) platform SDKs cannot be "installed to a different location on your machine" as you suggest: the 2K3SP1 SDK removes the 2K3 SDK. And therein lies the problem. Because the 2K3SP1 SDK is not backward compatible with the the 23K SDK that it insists on removing (due to library buffer overflow switches used to compile the libraries, according to documentation), it should NOT remove the older one. That would be like an updated COM component removing an older version when the newer version did not have binary compatibility - a serious breach of the rules.
As I see it, there are two solutions to this problem: 1) provide (additional) libraries that do not have these switches specified so that they are compatible with VB6 or 2) prevent SDKs from removing prior SDKs unless the SDK being replaced is binary-compatible with the replacement. Wouldn't either of these solutions be simple and work just fine as long as each development environment had its LIB and PATH set correctly
---
tmike
silverboy
Hi,
Thanks for the post!
There are a couple versions of the PSDK that install Side by Side. The Windows Server 2003 SP1 SDK and the Windows XPSP2 SDK can both be installed on the same machine. Actually, any flavor of the Windows Server 2003 SDK can be installed side by side with the Windows XPSP2 SDK.
The upgrade model is intentional to match the upgrade model of the OS. Generally, there are quite a few bug fixes between the Beta1/RC's of an SDK and the RTM version.
As the libraries and development environment of Visual Studio changes, the SDK changes to match and work correctly with the newer version. In addition, the SDK needs to make sure to work well with the OS as well. I know this doesn't address the underlying cause of your rant, but I am hoping to explain our reasoning.
We did address one of your concerns with the new Windows Vista SDK, though. We are now including a compiler with the x86 version (previous SDKs had 64-bit cross compilers). This will allow users to write and compile code with nothing more than notepad and the SDK installed.
Thanks,
Chris
Hopefully Helpful links:
Windows Server 2003 SP1 SDK- http://www.microsoft.com/downloads/details.aspx FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en
Windows XP SP SDK- http://www.microsoft.com/msdownload/platformsdk/sdkupdate/XPSP2FULLInstall.htm
Visual Studio Express- http://lab.msdn.microsoft.com/express/