What hawkeye said, with one minor addition: Since Vista came out, DX9 has been updated a few times, so a few DX9 .dll files may not be installed by your system. Microsoft has a DX Web Updater which ensures all the DX files are up to date, and I recommend running it if you have any DX errors.