I'm currently being beaten about by Microsoft's latest effort to make Windows Server 2008 R2 fail for me. Apparently, a 32-bit app without info in the manifest gets to use a virtualized version of the registry. This is bad, because the information we need is not in the virtual registry, but in the real one. I've added the appropriate information to our manifest that -- according to what I've found on line! -- should cause us to read the real registry.
Sadly, it isn't working.