Hey Guys,
I been testing out Vista and had the same issue with EAW (
http://forums.whirlpool.net.au/forum-replies.cfm?t=556892&p=1).
I didn't want to install DirectX 9 over DirectX 10 as DirectX 10 is much faster than DirectX 9 and usually games will perform much better with DX10. Most of the time, when a call for DX9 is made, DX10 will answer it.
Unfortunately in this case, I could get EAW running either. However, there is a way to fix it without getting rid of DirectX 10 and compromising performance in other games.
What you need to do is download d3dx9_27.dll from
http://www.dll-files.com/dllindex/dll-files.shtml?d3dx9_27) and stick it in your EAW directory. This normally gets it running :)
Hope that helps!