cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
amit_kumar3117
Level 5

RegDBSetKeyValueEx is not writing any value in registry on vista

Hi..When a"Standard User" launch .msi , RegDBSetKeyValueEx doesn't work..it is working fine on Windows XP or 2K..but in case of vista RegDBSetKeyValueEx is unable to write any value in key(for Standard User)...I am calling a custom action which internally calls a installScript function..RegDBSetKeyValueEx is getting called through this installScript function...Is there any problem of Admin rights (or UAC 😞 )...

How can I make it possible for "STANDARD USER" also to modify the value of a key under "HKLM"...

Path of the key is "HKEY_LOCAL_MACHINE\Software\Mydir\key1\"

Thanks
Labels (1)
0 Kudos
(3) Replies
thepeter
Level 7

Standard users cannot write to HKLM.
Everything is redirected to the Virtual Store.
0 Kudos
amit_kumar3117
Level 5

Thanks for reply...Can you tell me a user of admin group can write in registry or not??..I am droping the idea for standard user...But admin group users are also not able to set values for key on vista...RegDBSetKeyValueEx doesn't seem to work on vista for admin group user also...What should I do for that..
When I launch msi from InstallShield it writes the value ...But if i copy that msi and try to run It from other place it doesn't work..Whats the difference between running an .Msi from InstallShield or froma Different Path..

Plaese help me in this problem So that atleast admin group user could write values in registry...

Thanks
0 Kudos
DebbieL
Level 17

So it sounds like when you launch your installation from within InstallShield, the registry is set correctly. When you launch your installation from outside InstallShield (maybe by browsing to your .exe file through Windows Explorer and launching it), the registry is not set correctly.

InstallShield is run with elevated privileges. When you launch an installation from within InstallShield, those elevated privileges are carried over to your installation. So, launching installations from within InstallShield may not be a good test for checking the run-time behavior that your end users will experience.

I'm guessing that if you launch your installation by right-clicking and selecting Run as Administrator, the registry will be set correctly. If that's the case, I think that you might need to select Administrator for the Required Execution Level setting on the Setup.exe tab in the Releases view. The help pane that's displayed in the lower right when you select this setting has more information.
0 Kudos