directx is not backward compatible
Written 26 Jan 2009
Directx, the most common API on Windows for game development, is not backward compatible. Why?
When you upgrade to a new version of Windows ( e.g. from Windows XP to Windows Vista ) you need to install older versions of directx in order to use your older games. For Windows Vista, this means installing directx 9. What is the purpose of API and DLL versioning if you don’t make use of it?