This problem is actually addressed in the latest Astropy installation troubleshooting docs: http://docs.astropy.org/en/v0.2.4/install.html#the-windows-installer-can-t-find-python-in-the-registry
This issue is not unique to PyFITS, and has to do with whether or not the installation executable was built with UAC support, as well as whether your Python installation was installed "For all users" or "For the current user", as that affects which registry hierarchy Python installs its relevant keys into.
The script linked to in that documentation should fix up your registry with the correct entries so that the correct Python installation can be found regardless of how it was installed. But as with anything that messes with the registry please do handle with care.