The gnupg-w32 installer and gpg4win run in 32 bit. They create the "Install Dir" registry value under the WOW6432 node.
GPGME then runs in 64 bit -> The registry functions try to access the 64 bit registry values and not the WOW6432 Node keys. There are no such keys so it fails.
Only if GnuPG is installed in the standard path they are found through the find program in standard location mechanism.
Additionally as a nod to Gpg4win GPGME could look in "_gpgme_get_inst_dir() + "\..\..\GnuPG\bin" for gpgconf. As an alternative way without the registry. The first
/* 1. Try to find gpgconf.exe in the installation directory of gpgme. */
Does not work for Gpg4win because GPGME is installed for Gpg4win and gpgconf is installed next to it in a different folder.
Both GpgEX and GpgOL already have code to handle this.