There's a lot of confusion going on out there. Increasingly it's more and more about issues related to DirectX. So much so that now I'm writing an update to the article I wrote almost 3 years ago now. That article advised people to install the latest DirectX end-user runtime if they encountered errors like d3dx9.dll is missing or not installed.

The confusion seems to stem from people running Windows Vista or Windows 7 and seeing that they have DirectX 10 or 11 installed, by way of the DirectX Diagnostic Tool.

DirectX 10 however represented a clean break from DirectX 9, essentially the two are on the system together. DirectX 10 and up handles all the new stuff and DirectX 9 provides all the backwards compatibility with previous versions.

It can be represented like this:

Graphic representing DirectX as two seperate stacks

The DirectX team felt this was superior than bloating out DirectX 10 with all the old features nessasary to support ten years worth of games. Why do that when DirectX 9 would be on the system anyway and can achieve all of that?

The most recent example I came across, about 30 minutes ago. Had a user attempting to play Flight Simulator X, which returned the following error:

Flight Simulator cannot run because the version of Microsoft DirectX(R) installed on your computer is incompatible. Please reinstall DirectX9.0 by running Flight Simulator Setup, or download current version from www.microsoft.com/directx.

Nice and simple, and tells you exactly what to do. Go to the DirectX website, and grab the latest version. Doing that would solve the problem.

However, as people think they have DirectX 10 or 11 installed, they don't think they need to grab the update. Not realising that DirectX 9 has its own updates which may be required or that it has optional components which don't come installed on the system.

My advice for those with problems, just install DirectX. It doesn't matter what version you have, grab the update anyway. It won't break anything by installing it, it'll know what optional components are needed and which components need to be updated and update them.

For those installing a game, and are tempted to cancel the DirectX installer, just think for a second that maybe that installer is installing something the game needs to work.