Your program is likely affected by registry virtualization .
If a 32-bit program tries to write to the registry in the HKLM\SOFTWARE section, and permissions do not allow the write to succeed, then virtualization begins. The program is informed that the recording was successful, and the data is actually recorded in HKCU\Software\Classes\VirtualStore\MACHINE\SOFTWARE . Then, when the 32-bit program tries to read from the registry, the values ββfrom the VirtualStore folder VirtualStore returned to the program. Thus, the program is deceived into thinking that it was successfully written in a place where it does not have permissions, and 32-bit programs continue to work under Vista / Windows 7 without changes.
In addition, due to UAC , the admin user will be processed as if he were a non-administrator user, unless this program is specifically launched to run with administrator rights. Installer programs must be run as administrator so that they can write to the HKLM area.
source share