I use this code to know if a key exists or not:
if RegKeyExists(HKEY_LOCAL_MACHINE, \'Software\\Autodesk\') then
Let me guess... you're on Windows 7 64-bit?
It's not InnoSetup's fault at all, it's that the Registry is virtualized in Vista & higher, and on 64-bit there are branches for native 64-bit and WOW'ed 32-bit.
In this case, since InnoSetup is a 32-bit program, the OS directs all of its HKLM\Software Registry requests to the WOW6432Node.
If your program is 64-bit, then you want to use a 64-bit setup program too.