To Deathsai:
Ok, so here is a solution to your problem:
Most likely your DirectX installation has become corrupt. This can happen when installing a new version over an existing one. The solution here is to remove DirectX from your pc. Sadly, DirectX is embedded in Windows, and therefore it can't be uninstalled simply.
First, get a DirectX Uninstaller
http://www.3dcenter.org/downloads/directx-dx9uninstaller.php
Extract the files in the zip file to C:\DXTEMP. Then reboot your pc and hit F8 during the startup, before Windows starts loading. When the menu appears, make your pc start in Safe Mode. Then run the uninstaller. This will uninstall the current DirectX version and reinstall the original DirectX 8.1 from your Windows XP cd (you'll need original CD). After that, reboot, and install DirectX 9.0b or c
You can try in normal mode too (it worked for me), but it is reccomended that you run the uninstaller in safe mode...