Note that the DirectX SDK is deprecated. See "Where is the DirectX SDK?" and "Where is the DirectX SDK (2013 Edition)?" for details.

Over the past few month we've been getting reports of problems with the DirectX SDK (June 2010) setup failing for customers displaying an installation error when it gets to point of installing the "redistributable packages". This particular problem has been traced to an issue with the Visual C++ 2010 Redistributable Package version 10.0.30319 (RTM). When the 10.0.40219 (Service Pack 1) version is already present on the system, the 10.0.30319 (RTM) version returns a failure instead of a success as was expected.

The work-around for this issue is straight-forward:

(1) Remove the Visual C++ 2010 Redistributable Package version 10.0.40219 (Service Pack 1) from the system (both x86 and x64 if applicable). This can be easily done via a command-line with administrator rights:

MsiExec.exe /passive /X{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}
MsiExec.exe /passive /X{1D8E6291-B0D5-35EC-8441-6616F567A0F7}

(2) Install the DirectX SDK (June 2010)

(3) Reinstall the Visual C++ 2010 Redistributable Package version 10.0.40219 (Service Pack 1). On an x64 system, you should install both the x86 and x64 versions of the C++ REDIST. Be sure to install the most current version available, which at this point is the KB 2565063 with a security fix.

This issue is also covered by KB 2717426

Note: This issue does not affect earlier version of the DirectX SDK which deploy the VS 2005 / VS 2008 CRT REDIST and do not deploy the VS 2010 CRT REDIST. This issue does not affect the DirectX End-User Runtime web or stand-alone installer as those packages do not deploy any version of the VC++ CRT.

Windows SDK: The Windows SDK 7.1 has exactly the same issue as noted in KB 2717426.

Windows 7 Service Pack 1 / Windows 8 users: The Direct3D 10.x/Direct3D 11.x SDK Debug Layers installed by the DirectX SDK (June 2010) are not compatible with Windows 8 or Windows 7 SP1 + KB 2670838. See this post for details on installing the correct version.

Setup writers: If you are creating a deployment for your application and you are using VS 2010, it is recommended you use the Service Pack 1 version and not the RTM version to avoid this issue. You should also consider picking up the updated version of the DirectX End-User Runtime Package if you are deploying DirectX SDK components with your application, and of course fully understand the issues detailed in this earlier blog post.

FCIV: This of course assumes you actually have an uncorrupted copy of the DirectX SDK setup package. The best way to validate this it to run fciv -sha1 DXSDK_Jun10.exe and verify you get 8fe98c00fde0f524760bb9021f438bd7d9304a69 dxsdk_jun10.exe