This was a strange one that I had forgotten about. Even though Vista ships with DirectX 10, it doesn't contain the DirectX 9 updates that have been released in the past year or so. This makes sense if you think about it, because Vista RTM'd in November 2006. It is almost 2008 now.
I was reminded of this fact when I tried to run a DirectX 9 screensaver that needed d3dx9_30.dll to run properly.
There is a lot of bad advice out there on how to fix this problem, but the best and easiest advice I can give anyone facing this problem is to download the
DirectX End-User Runtime Web Installer. This package is typically updated whenever the DirectX 9 and 10 SDKs are updated.
The installer figures out what parts are missing on your system and only downloads the packages needed.
If you need an offline installer with all the packages included, which is very handy for systems without an internet connection, go
here.